誰かがBootstrapを変更する方法を知っていますinput:focus
か?input
フィールドをクリックすると現れる青い輝き?
誰かがBootstrapを変更する方法を知っていますinput:focus
か?input
フィールドをクリックすると現れる青い輝き?
回答:
最後に、bootstrap.cssの次のcssエントリを変更しました
textarea:focus,
input[type="text"]:focus,
input[type="password"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="time"]:focus,
input[type="week"]:focus,
input[type="number"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="search"]:focus,
input[type="tel"]:focus,
input[type="color"]:focus,
.uneditable-input:focus {
border-color: rgba(126, 239, 104, 0.8);
box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset, 0 0 8px rgba(126, 239, 104, 0.6);
outline: 0 none;
}
input[type] {}
@input-border-focus
この答えの代わりに使用することをお勧めします。
select
.form-control
セレクターを使用して、すべての入力を一致させることができます。たとえば、赤に変更するには:
.form-control:focus {
border-color: #FF0000;
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(255, 0, 0, 0.6);
}
それをカスタムcssファイルに入れ、bootstrap.cssの後にロードします。textarea、selectなどを含むすべての入力に適用されます...
Bootstrap 3.xを使用している場合は、新しい@input-border-focus
変数で色を変更できます。
詳細と警告については、コミットを参照してください。
に _variables.scss更新@input-border-focus
。
このグローのサイズ/その他の部分を変更するには、mixins / _forms.scssを変更します
@mixin form-control-focus($color: $input-border-focus) {
$color-rgba: rgba(red($color), green($color), blue($color), .6);
&:focus {
border-color: $color;
outline: 0;
@include box-shadow(inset 0 1px 1px rgba(0,0,0,.075), 0 0 4px $color-rgba);
}
}
.btn:focus { outline: none; }
。
_variables.scss
ます。
このようにして、ブートストラップスタイルを変更せずに.form-control:focus
色を変更できます。
.form-control:focus {
border-color: #28a745;
box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
}
.form-control:focus
、CSSに変更するパラメーターをコピーします。この場合はborder-color
およびbox-shadow
です。border-color
ます。この場合.btn-success
、ステップ1で説明したbootstrap.cssページで特定のクラスを検索することにより、ブートストラップがクラスに使用するのと同じグリーンを選択します。box-shadow
ブートストラップの透明度用の4番目のRGBAパラメーター(0.25)を変更せずに、パラメーターに追加します。Bootstrap v4.0.0ベータリリースの場合、Bootstrapをオーバーライドするスタイルシートに以下を追加する必要があります(ブートストラップv4.0.0ベータへのCDN /ローカルリンクの後に追加!important
するか、スタイリングに追加します:
.form-control:focus {
border-color: #6265e4 !important;
box-shadow: 0 0 5px rgba(98, 101, 228, 1) !important;
}
box-shadowのborder-colorとrgbaを、希望するカラースタイルに置き換えます*。
Bootstrap 4では、SASSを自分でコンパイルする場合、次の変数を変更して、フォーカスシャドウのスタイルを制御できます。
$input-btn-focus-width: .2rem !default;
$input-btn-focus-color: rgba($component-active-bg, .25) !default;
$input-btn-focus-box-shadow: 0 0 0 $input-btn-focus-width $input-btn-focus-color !default;
注:Bootstrap 4.1以降、$input-btn-focus-color
および$input-btn-focus-box-shadow
変数は入力要素にのみ使用され、ボタンには使用されません。ボタンのフォーカスシャドウはとしてハードコーディングされているbox-shadow: 0 0 0 $btn-focus-width rgba($border, .5);
ため、$input-btn-focus-width
変数を介してのみシャドウの幅を制御できます。
Chromeでプラットフォームのデフォルトの「黄色」のアウトラインを表示する場合の変更点は次のとおりです。
textarea:focus, input[type="text"]:focus, input[type="password"]:focus, input[type="datetime"]:focus, input[type="datetime-local"]:focus, input[type="date"]:focus, input[type="month"]:focus, input[type="time"]:focus, input[type="week"]:focus, input[type="number"]:focus, input[type="email"]:focus, input[type="url"]:focus, input[type="search"]:focus, input[type="tel"]:focus, input[type="color"]:focus, .uneditable- input:focus {
border-color: none;
box-shadow: none;
-webkit-box-shadow: none;
outline: -webkit-focus-ring-color auto 5px;
}
outline: dotted thin black;
またはテストが機能することを示唆するものは何でも)
グローを完全に無効にする方法を探して、このスレッドに着地しました。私の目的のために、多くの回答が複雑すぎました。簡単に解決するには、次のようにCSSを1行追加するだけです。
input, textarea, button {outline: none; }
box-shadow: none;
も必要だと思います。
!important
たbox-shadow
が、@ silverliebtによって提案された後に追加しなければならなかった
bodyタグにIDを追加します。独自のCss(bootstrap.cssではない)で、新しい本体IDをポイントし、オーバーライドするクラスまたはタグと新しいプロパティを設定します。これで、変更を失うことなく、いつでもブートストラップを更新できます。
htmlファイル:
<body id="bootstrap-overrides">
cssファイル:
#bootstrap-overrides input[type="text"]:focus, input[type="password"]:focus, input[type="email"]:focus, input[type="url"]:focus, textarea:focus{
border-color: red;
box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset, 0 0 8px rgba(126, 239, 104, 0.6);
outline: 0 none;
}
実際、Bootstrap 4.0.0-Beta(2017年10月現在)では、input要素はinput [type = "text"]によって参照されておらず、input要素のすべてのBootstrap 4プロパティは実際にはフォームですベースです。
したがって、.form-control:focusスタイルを使用しています。入力要素を「オンフォーカス」で強調表示するための適切なコードは次のとおりです。
.form-control:focus {
color: #495057;
background-color: #fff;
border-color: #80bdff;
outline: none;
}
実装はかなり簡単で、border-colorプロパティを変更するだけです。
上に構築@ wasingerの返答上記にブートストラップ4.5私は色の変数だけでなく、上書きしなければならなかったbox-shadow
自分自身を。
$input-focus-width: .2rem !default;
$input-focus-color: rgba($YOUR_COLOR, .25) !default;
$input-focus-border-color: rgba($YOUR_COLOR, .5) !default;
$input-focus-box-shadow: 0 0 0 $input-focus-width $input-focus-color !default;
CSSではこれを解決できませんでした。ブートストラップ後にsite.cssを使用しているにもかかわらず、Boostrapが最後の発言を得ているようです。いずれにしても、これは私にとってはうまくいきました。
$(document).ready(function () {
var elements = document.getElementsByClassName("form-control");
Array.from(elements).forEach(function () {
this.addEventListener("click", cbChange, false);
})
});
function cbChange(event) {
var ele = event.target;
var obj = document.getElementById(ele.id);
obj.style.borderColor = "lightgrey";
}
後で私はこれがCSSで動作することを発見しました。明らかにフォームコントロールのみで
.form-control.focus, .form-control:focus {
border-color: gainsboro;
}
以下は、Chrome開発者ツールの前と後の写真です。フォーカスオンとフォーカスオフの境界線の色の違いに注意してください。余談ですが、これはボタンでは機能しません。ボタン付き。ボタンを使用して、outlineプロパティをnoneに変更する必要があります。