Est-ce que quelqu'un sait comment changer Bootstrap input:focus
? La lueur bleue qui apparaît lorsque vous cliquez sur un input
champ?
html
css
twitter-bootstrap
felix001
la source
la source
Réponses:
En fin de compte, j'ai changé l'entrée css suivante dans bootstrap.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; }
la source
input[type] {}
@input-border-focus
au lieu de cette réponse.select
Vous pouvez utiliser le
.form-control
sélecteur pour faire correspondre toutes les entrées. Par exemple pour passer au rouge:.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); }
Mettez-le dans votre fichier css personnalisé et chargez-le après bootstrap.css. Il s'appliquera à toutes les entrées, y compris textarea, select etc ...
la source
Si vous utilisez Bootstrap 3.x, vous pouvez maintenant changer la couleur avec la nouvelle
@input-border-focus
variable.Voir le commit pour plus d'informations et d'avertissements.
Dans la mise à jour _variables.scss
@input-border-focus
.Pour modifier la taille / d'autres parties de cette lueur modifiez les 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); } }
la source
.btn:focus { outline: none; }
, par exemple._variables.scss
.Vous pouvez modifier la
.form-control:focus
couleur sans modifier le style de bootstrap de cette manière:Solution rapide
.form-control:focus { border-color: #28a745; box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25); }
Explication complète
.form-control:focus
, copiez les paramètres que vous souhaitez modifier dans votre css. Dans ce cas estborder-color
etbox-shadow
.border-color
. Dans ce cas, je choisis de choisir le même vert que le bootstrap utilise pour leur.btn-success
classe, en recherchant cette classe particulière dans la page bootstrap.css mentionnée à l'étape 1.box-shadow
paramètre sans modifier le quatrième paramètre RVBA (0,25) que le bootstrap a pour la transparence.la source
Pour la version bêta de Bootstrap v4.0.0, vous aurez besoin des éléments suivants ajoutés à une feuille de style qui remplace Bootstrap (soit ajouter après le lien CDN / local vers bootstrap v4.0.0 beta, soit ajouter
!important
aux styles:.form-control:focus { border-color: #6265e4 !important; box-shadow: 0 0 5px rgba(98, 101, 228, 1) !important; }
Remplacez la couleur de la bordure et le rgba sur l'ombre de la boîte par le style de couleur que vous souhaitez *.
la source
Dans Bootstrap 4, si vous compilez SASS vous-même, vous pouvez modifier les variables suivantes pour contrôler le style de l'ombre de focus:
$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;
Remarque: depuis Bootstrap 4.1, les variables
$input-btn-focus-color
et$input-btn-focus-box-shadow
ne sont utilisées que pour les éléments d'entrée, mais pas pour les boutons. L'ombre de focus pour les boutons est codée en dur commebox-shadow: 0 0 0 $btn-focus-width rgba($border, .5);
, vous ne pouvez donc contrôler la largeur de l'ombre que via la$input-btn-focus-width
variable.la source
Voici les modifications si vous souhaitez que Chrome affiche le contour "jaune" par défaut de la plate-forme.
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; }
la source
outline: dotted thin black;
(ou tout ce que vos tests suggèrent fonctionne)Pour désactiver la lueur bleue (mais vous pouvez modifier le code pour changer la couleur, la taille, etc.), ajoutez ceci à votre css:
.search-form input[type="search"] { -webkit-box-shadow: none; outline: -webkit-focus-ring-color auto 0px; }
Voici une capture d'écran montrant l'effet: avant et après:
la source
J'ai atterri sur ce fil à la recherche du moyen de désactiver complètement la lueur. De nombreuses réponses étaient trop compliquées pour mon propos. Pour une solution simple, j'avais juste besoin d'une ligne de CSS comme suit.
input, textarea, button {outline: none; }
la source
box-shadow: none;
aussi.!important
après lebox-shadow
suggéré par @silverliebtAjoutez un identifiant à la balise body. Dans votre propre Css (pas le bootstrap.css), pointez sur le nouvel ID de corps et définissez la classe ou la balise que vous souhaitez remplacer et les nouvelles propriétés. Vous pouvez désormais mettre à jour bootstrap à tout moment sans perdre vos modifications.
fichier html:
<body id="bootstrap-overrides">
fichier 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; }
Voir aussi: meilleur moyen de remplacer le bootstrap css
la source
En fait, dans Bootstrap 4.0.0-Beta (à partir d'octobre 2017), l'élément d'entrée n'est pas référencé par input [type = "text"] , toutes les propriétés Bootstrap 4 pour l'élément d'entrée sont en fait basées sur un formulaire .
Il utilise donc les styles .form-control: focus . Le code approprié pour la mise en évidence "sur focus" d'un élément d'entrée est le suivant:
.form-control:focus { color: #495057; background-color: #fff; border-color: #80bdff; outline: none; }
Assez facile à implémenter, changez simplement la propriété border-color .
la source
box-shadow: xpx ypx #80bdff;
En me basant sur la réponse de @ wasinger ci-dessus, dans Bootstrap 4.5, j'ai dû remplacer non seulement les variables de couleur, mais également elles-
box-shadow
mêmes.$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;
la source
Dans Bootstrap 3.3.7, vous pouvez modifier la valeur @ input-border-focus dans la section Forms du personnalisateur:
la source
Pour la bordure d'entrée avant le focus. Vous pouvez spécifier votre couleur préférée que vous souhaitez utiliser et d'autres css comme le remplissage, etc.
.input { padding: 6px 190px 6px 15px; outline: #2a65ea auto 105px ; }
Lorsque nous nous concentrons sur l'entrée. Vous pouvez spécifier votre contour de couleur préféré que vous souhaitez
.input:focus{ box-shadow: none; border-color: none; outline: lightgreen auto 5px ; }
la source
Si vous souhaitez supprimer complètement l'ombre, ajoutez la classe
shadow-none
à votre élément d'entrée.la source
Pourquoi ne pas simplement utiliser?
input:focus{ outline-color : #7a0ac5; }
la source
Je n'ai pas pu résoudre cela avec CSS. Il semble que Boostrap ait le dernier mot, même si je l'ai fait par site.css après le bootstrap. En tout cas, cela a fonctionné pour moi.
$(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"; }
Plus tard, j'ai trouvé que cela fonctionnait dans le css. Evidemment avec les contrôles de formulaire uniquement
.form-control.focus, .form-control:focus { border-color: gainsboro; }
Voici les photos avant et après de l'outil Chrome Developer. Remarquez la différence de couleur de bordure entre la mise au point activée et la mise au point désactivée. Sur une note latérale, cela ne fonctionne pas pour les boutons. Avec des boutons. Avec les boutons, vous devez changer la propriété du contour en aucune.
la source
Cela fonctionnera à 100%, utilisez ceci:
.form-control, .form-control:focus{ box-shadow: 0 0 0 0 rgba(255, 255, 255, 0); border: rgba(255, 255, 255, 0); }
la source