ChromeブラウザUsername
およびPassword
入力フィールドから_background-color
_および_background-image
_の効果を自動入力で削除しました。
オートコンプリートの前
オートコンプリート後
しかし、Chromeブラウザオートコンプリートにより、入力からアイコンが非表示になり、_background-color
_も変更されました。そのため、アイコンを入力のままにしておく必要があります。
Chromeブラウザーのフィールドの背景色の変更を停止して画像を非表示にすることは可能ですか?
_.form-section .form-control {
border-radius: 4px;
background-color: #f7f8fa;
border: none;
padding-left: 62px;
height: 51px;
font-size: 16px;
background-repeat: no-repeat;
background-position: left 17px center;
}
.form-section .form-control:focus {
-webkit-box-shadow: none;
box-shadow: none;
}
.form-section .form-group {
margin-bottom: 21px;
}
.form-section .form-control[type="email"] {
background-image: url('https://i.stack.imgur.com/xhx3w.png');
}
.form-section .form-control[type="password"] {
background-image: url('https://i.stack.imgur.com/910l0.png');
}
.form-btn {
padding:10px;
background-color: #65a3fe;
border: none;
color: #ffffff;
font-size: 18px;
font-weight: 700;
}
_
_<div class="form-section">
<form>
<div class="form-group">
<input title="Email" type="email" class="form-control" name="email" placeholder="Your email address" value="">
</div>
<div class="form-group">
<input title="Password" type="password" class="form-control" name="password" placeholder="Your Password">
</div>
<button type="submit" class="btn btn-primary form-btn">Log in</button>
</form>
</div>
_
あなたCAN NOTオートコンプリートコードはuser agent stylesheet、詳細については cascading-order を参照してください。
ここにコードがあります(私はグーグルクロムからコピーしました)それはあなたのアイコンを非表示にしていますオートコンプリート、疑問に思った場合のために:
input:-internal-autofill-selected {
background-color: rgb(232, 240, 254) !important;
background-image: none !important;
color: -internal-light-dark-color(black, white) !important;
}
だから今何をしますか?ここで解決するアイコンが消える問題に興味があるならあなたのためにそれを行うことができるhackです:
.form-section .form-control {
border-radius: 4px;
background-color: #f7f8fa;
border: none;
padding-left: 62px;
height: 51px;
font-size: 16px;
background-repeat: no-repeat;
background-position: left 17px center;
}
.form-section .form-control:focus {
-webkit-box-shadow: none;
box-shadow: none;
}
.form-section .form-group {
margin-bottom: 21px;
position: relative;
}
.form-icon {
position: absolute;
left: 16px;
top: 50%;
transform: translateY(-50%);
}
.form-section .form-control[type="password"] {
background-image: url('https://i.stack.imgur.com/910l0.png');
}
.form-btn {
padding: 10px;
background-color: #65a3fe;
border: none;
color: #ffffff;
font-size: 18px;
font-weight: 700;
}
<div class="form-section">
<form>
<div class="form-group">
<input title="Email" type="email" class="form-control" name="email" placeholder="Your email address" value="">
<img class="form-icon" src="https://i.stack.imgur.com/xhx3w.png" alt="">
</div>
<div class="form-group">
<input title="Password" type="password" class="form-control" name="password" placeholder="Your Password">
</div>
<button type="submit" class="btn btn-primary form-btn">Log in</button>
</form>
</div>
これで問題ないか確認してください。私はあなたのコードにいくつかの変更を加えました。
これでチェックできます jsfiddle
<div class="form-section">
<form>
<div class="form-group control">
<input title="Email" type="email" class="form-control email" name="email" placeholder="Your email address" value="">
<span class='input-icon'></span>
</div>
<div class="form-group control">
<input title="Password" type="password" class="form-control pass" name="password" placeholder="Your Password">
<span class='input-icon'></span>
</div>
<button type="submit" class="btn btn-primary form-btn">Log in</button>
</form>
</div>
.form-section .form-control {
border-radius: 4px;
background-color: #f7f8fa;
border: none;
padding-left: 62px;
height: 51px;
font-size: 16px;
background-repeat: no-repeat;
background-position: left 17px center;
}
.form-section .form-control:focus {
-webkit-box-shadow: none;
box-shadow: none;
}
.form-section .form-group {
margin-bottom: 21px;
}
.form-btn {
padding:10px;
background-color: #65a3fe;
border: none;
color: #ffffff;
font-size: 18px;
font-weight: 700;
}
.control {
position: relative;
}
.email .pass {
padding-left: 35px;
padding-top: 10px;
padding-bottom: 10px;
font-size: 16px;
}
.email ~ .input-icon {
background-image: url('https://i.stack.imgur.com/xhx3w.png');
background-repeat: no-repeat;
background-size: 100%;
background-position: center center;
width: 22px;
height: 14px;
position: absolute;
left: 8px;
bottom: 0;
top: 0;
margin: auto;
padding-top: 5px;
padding-bottom: 5px;
}
.pass ~ .input-icon {
background-image: url('https://i.stack.imgur.com/910l0.png');
background-repeat: no-repeat;
background-size: 100%;
background-position: center center;
width: 22px;
height: 14px;
position: absolute;
left: 8px;
bottom: 0;
top: 0;
margin: auto;
padding-top: 5px;
padding-bottom: 5px;
}
このコードを試してみましょう、これがあなたに役立つことを願っています
.form-section .form-control {
border-radius: 4px;
background-color: #f7f8fa;
border: none;
padding-left: 62px;
height: 51px;
font-size: 16px;
background-repeat: no-repeat;
background-position: left 17px center;
}
.form-section .form-control:focus {
-webkit-box-shadow: none;
box-shadow: none;
}
.form-section .form-group {
margin-bottom: 21px;
}
.form-section .form-control[type="email"] {
background-image: url('https://i.stack.imgur.com/xhx3w.png');
}
@-webkit-keyframes autofill_email {
to {
background-image: url('https://i.stack.imgur.com/xhx3w.png');
}
}
.form-section .form-control[type="email"]:-webkit-autofill {
-webkit-animation-name: autofill_email;
-webkit-animation-fill-mode: both;
}
.form-section .form-control[type="password"] {
background-image: url('https://i.stack.imgur.com/910l0.png');
}
@-webkit-keyframes autofill_pass {
to {
background-image: url('https://i.stack.imgur.com/910l0.png');
}
}
.form-section .form-control[type="password"]:-webkit-autofill {
-webkit-animation-name: autofill_pass;
-webkit-animation-fill-mode: both;
}
.form-btn {
padding: 10px;
background-color: #65a3fe;
border: none;
color: #ffffff;
font-size: 18px;
font-weight: 700;
}
<link href="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css" rel="stylesheet" />
<section class="py-4">
<div class="container">
<div class="form-section">
<form>
<div class="form-group">
<input title="Email" type="email" class="form-control" name="email" placeholder="Your email address" value="">
</div>
<div class="form-group">
<input title="Password" type="password" class="form-control" name="password" placeholder="Your Password">
</div>
<button type="submit" class="btn btn-primary form-btn">Log in</button>
</form>
</div>
</div>
</section>
背景色を削除したい場合は、キーフレームスタイルでデフォルトの背景色を追加します
/* Change the white to any color ;) */
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
-webkit-box-shadow: 0 0 0 30px white inset !important;
}
/*Additionally, you can use this to change the text color:*/
/*Change text in autofill textbox*/
input:-webkit-autofill {
-webkit-text-fill-color: yellow !important;
}