


Comment puis-je désactiver les styles de focus tout en conservant l'accessibilité du clavier??
Oct 31, 2024 am 02:41 AMPuis-je désactiver le focus lorsque ce n'est pas nécessaire??
Vous souhaitez désactiver le focus lorsque ce n'est pas nécessaire parce que vous n'aimez pas l'apparence de votre navigation lorsque le focus est activé dessus. Il utilise le même style que .active et c'est déroutant. Cependant, vous ne voulez pas vous en débarrasser pour les personnes qui utilisent un clavier.
Le problème peut être résolu
Certaines affiches ont mentionné la pseudo-classe :focus-visible, qui désormais a un support de navigateur décent. Conformément aux spécifications, les navigateurs ne devraient désormais indiquer le focus que lorsque cela est utile à l'utilisateur, par exemple lorsque l'utilisateur interagit avec la page via un clavier ou un autre appareil non pointeur.
Cela signifie que dans la plupart des cas, Dans les navigateurs, lorsqu'un utilisateur clique/appuie sur un bouton (ou un autre élément pouvant être focalisé), l'agent utilisateur n'affichera pas la bague de mise au point même si le bouton est mis au point, car dans ce cas, la bague de mise au point n'est pas utile à l'utilisateur.
Compatibilité descendante
Le problème possible avec l'utilisation de :focus-visible comme celui-ci est que les navigateurs qui ne le prennent pas en charge afficheront la bague de mise au point par défaut, qui peut ne pas être claire ou visible selon le design.
Réponse originale
Si la solution :focus-visible n'est pas suffisante pour la compatibilité ascendante, vous pouvez obtenir des styles de focus clavier uniquement pour les boutons, liens et autres éléments de conteneur avec le solution suivante?:
button { -moz-appearance: none; -webkit-appearance: none; background: none; border: none; outline: none; font-size: inherit; } .btn { all: initial; margin: 1em; display: inline-block; } .btn__content { background: orange; padding: 1em; cursor: pointer; display: inline-block; } /* Fixing the Safari bug for `<button>`s overflow */ .btn__content { position: relative; } /* All the states on the inner element */ .btn:hover > .btn__content { background: salmon; } .btn:active > .btn__content { background: darkorange; } .btn:focus > .btn__content { box-shadow: 0 0 2px 2px #51a7e8; color: lime; } /* Removing default outline only after we've added our custom one */ .btn:focus, .btn__content:focus { outline: none; }
Cette technique place tous les styles sur l'élément interne du conteneur, empêchant ainsi les styles de focus d'appara?tre lorsque la souris est utilisée.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undress AI Tool
Images de déshabillage gratuites

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Stock Market GPT
Recherche d'investissement basée sur l'IA pour des décisions plus intelligentes

Article chaud

Outils chauds

Bloc-notes++7.3.1
éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

UseObject-FitorMax-widthWithHeight: Autotopreventimagedistortion; Object-FitControlshowImagesFillContainers whilepreservingaspeclectratios, andmax-width: 100%; hauteur: autoensirsesworSeSivesCalings withoutstreching.

Utilisez HTML et CSS pour créer des menus déroulants sans JavaScript. 2. Déclenchez l'affichage sous-menu via: Hover Pseudo-Class. 3. Utilisez des listes imbriquées pour construire une structure et définissez les effets d'affichage cachés et suspendus dans CSS. 4. L'animation de transition peut être ajoutée pour améliorer l'expérience visuelle.

Usethebox-shadowpropertytoadddropshadows.definehorizontalandverticaloffsets, flou, propagation, couleur, andoptionalinsetForrinnershadows.multipleshadowsarecomma-separisé.example: box-shadow: 5px10px8pxrgba (0,0,0,0.3); créationasoftblack.

ThecsssfilterPropertyallowsEasyImagestyling withheffets likeblur, luminosité et grayscale.Ususefilter: filtre-fonction (valeur) onImagesorBackgroundMages.COMMONFUNCTIONSINCULLEBLUR (PX), luminosité (%), contraste (%),.

Utilisez les attributs GAP, Row-Gap ou Column-Gap pour créer un espacement entre les éléments de la grille dans la disposition CSSGrid. GAP est l'attribut d'abréviation pour régler l'espacement des colonnes de ligne, qui peut accepter une ou deux valeurs de longueur. La ligne de ligne et la colonne contr?lent individuellement l'espacement entre les lignes et les colonnes, et les unités de support telles que PX, REM et%.

La fonction clamp () réalise la mise à l'échelle de la police réactive à travers les valeurs minimales, préférées et maximales; 2. La syntaxe est une pince (valeur minimale, valeur préférée, valeur maximale) et unités REM et VW couramment utilisées; 3. La police prend la valeur minimale sur le petit écran, et l'échelle en fonction de VW à mesure que l'écran augmente et ne dépasse pas la valeur maximale; 4. Sélectionnez raisonnablement la valeur numérique pour assurer la lisibilité et éviter d'être trop grande ou trop petite; 5. Combinant la proportion de type REM pour améliorer la cohérence de la conception.

Utilisez un rapport d'aspect: 1/1 pour créer un carré réactif et définissez le rapport d'aspect dans les navigateurs modernes; Si vous devez être compatible avec les anciens navigateurs, vous pouvez utiliser le padding-top: 100% Technique pour maintenir la cohérence de la largeur et de la hauteur par des unités relatives; Vous pouvez également utiliser des unités VW pour faire changer le carré avec la fenêtre.

Utilisez le filtre de fond: blur () pour obtenir l'effet de verre givré, combinant un fond transparent RGBA, des bordures minces et des coins arrondis, tels que .Frosted-carte {Backdrop-Filter: Blur (10px); Background-Color: RGBA (255,255,255,0.1); Border: 1Pxsolidrgba (255,255,255,0.2); Border-Radius: 12px; padding: 20px;}, assurez-vous de vous assurer qu'il y a du contenu derrière les éléments et l'attention à brouter.
