Cookie Consent by Free Privacy Policy Generator 📌 Le saviez-vous ? :focus :focus-within :focus-visible

🏠 Team IT Security News

TSecurity.de ist eine Online-Plattform, die sich auf die Bereitstellung von Informationen,alle 15 Minuten neuste Nachrichten, Bildungsressourcen und Dienstleistungen rund um das Thema IT-Sicherheit spezialisiert hat.
Ob es sich um aktuelle Nachrichten, Fachartikel, Blogbeiträge, Webinare, Tutorials, oder Tipps & Tricks handelt, TSecurity.de bietet seinen Nutzern einen umfassenden Überblick über die wichtigsten Aspekte der IT-Sicherheit in einer sich ständig verändernden digitalen Welt.

16.12.2023 - TIP: Wer den Cookie Consent Banner akzeptiert, kann z.B. von Englisch nach Deutsch übersetzen, erst Englisch auswählen dann wieder Deutsch!

Google Android Playstore Download Button für Team IT Security



📚 Le saviez-vous ? :focus :focus-within :focus-visible


💡 Newskategorie: Programmierung
🔗 Quelle: dev.to

:focus, :focus-visible ou encore :focus-within. Si vous n’avez jamais pris le temps d’aller lire MDN sur le sujet, voici un petit résumé qui vous expliquera les bases !

Tout d’abord, :focus, :focus-visible et :focus-within sont des pseudo-classes css. Une pseudo-classe css permet de donner l’état d’un élément sur lequel elle se trouve. Détaillons le rôle de chacune d’entre elles.

 

:focus

Commençons par la première arrivé dans nos navigateurs, j’ai nommé :focus.

:focus permet simplement d’appliquer du style quand un élément est dans l’état focus.

Un élément peut être dans l’état focus via :

  • navigation clavier : Tab
  • clique souris
  • entrée clavier

 

Cas d’usage

:focus applique un style lorsqu’un élément est dans l’état focus. Par défaut, une bordure épaisse est appliquée sur l’élément focus, mais il est possible d’ajouter d’autre style.

.element:focus {
  background: yellow;
  color: red;
}
<input class="element" value="Rouge si focus" />

input

focused input that apply style

Dans cet exemple, on voit que lorsque l’input element est focus, le navigateur applique le style à ce dernier.

Il est possible de supprimer cette bordure en appliquant la classe suivante :

.element:focus {
    outline: none
}

Par soucis d’accessibilité, il est fortement déconseillé de supprimer complètement outline. Il est préférable de le remplacer avec un autre style respectant les règles d’accessibilité (en particulier le contraste de 3:1).

Compatibilité

:focus est supportée depuis 2003 par certains navigateurs. Aujourd’hui, :focus est supportée sur tous les navigateurs web. Liste des navigateurs supportant :focus.

 

:focus-within

La deuxième pseudo classe a avoir fait apparition dans nos navigateur est :focus-within.

:focus-within permet d’appliquer du style sur un élément qui est focus ou dont l’un des enfants est focus.

 

Cas d’usage

Il est possible de mettre en évidence un formulaire lorsque l’un de ses inputs est focus.

form with an input
form with an input focused that apply style on both element

form:focus-within {
  border: 2px solid #0085ca;
}
<form>
    <label>
        Full Name: <input name="firstName" type="text" />
    </label>
</form>

 

Compatibilité

:focus-within est supportée depuis 2017 par certains navigateurs. Aujourd’hui, :focus-within est supportée par tous les navigateurs web. Liste des navigateurs supportant :focus-within.

 

:focus-visible

La dernière des trois a avoir fait son apparition dans nos navigateurs est :focus-visible.

:focus-visible est ajoutée dans le but de simplifier la vie des développeurs. Cette pseudo-classe permet d’appliquer le style focus en fonction de règles heuristiques du User Agent.

Pour simplifier, le style focus n’est plus appliqué par défaut mais plutôt lorsqu’il est pertinent pour l’utilisateur.

 

Cas d’usage

L’utilisation de :focus-visible permet de faire une différence visuelle entre les focus par tab et les focus par clique.

 

Focus Clavier (tab) Focus Souris (clique)
bouton focus par tab avec le style de la pseudo classe :focus bouton focus par clique avec le style de la pseudo classe :focus
bouton focus par tab avec le style de la pseudo classe :focus-visible le style focus ne s'applique pas au bouton focus par clique car il possèdent la classe :focus-visible

Ici on voit la différence entre :focus et :focus-visible. Le comportement de focus par clavier est identique.

En revanche, on peut voir que :focus applique le style lorsqu’on clique à la souris sur un bouton alors que :focus-visible ne l’applique pas.

 

Compatibilité

:focus-visible est supportée depuis 2020 dans certains navigateurs. Aujourd’hui :focus-visible est supportée par tous les navigateurs web. Liste des navigateurs supportant :focus-visible.

 

Sources

https://developer.mozilla.org/en-US/docs/Web/CSS/:focus

https://developer.mozilla.org/en-US/docs/Web/CSS/:focus-within

https://developer.mozilla.org/en-US/docs/Web/CSS/:focus-visible

https://caniuse.com/

...



📌 Welcome to .NET Conf: Focus on Microservices | Focus on Microservices


📈 14.88 Punkte

📌 Cisdem Focus 2.0.0 - Block distracting apps and websites during your focus time.


📈 14.88 Punkte

📌 Kubuntu Focus announce the second-gen mini desktop Focus NX


📈 14.88 Punkte

📌 Challenge: Focus on Focus APIs in SwiftUI


📈 14.88 Punkte

📌 Serien-Produktion angelaufen | Saarlouiser Ford-Werk baut schnellsten Focus


📈 7.44 Punkte

📌 Ford Focus RS: «The Stig» im Drift-Modus


📈 7.44 Punkte

📌 Ford Focus RS: «The Stig» im Drift-Modus


📈 7.44 Punkte

📌 Ford Focus RS : Focussiert auf Brachialgewalt


📈 7.44 Punkte

📌 Plantronics Voyager Focus UC im Test


📈 7.44 Punkte

📌 Terrorism focus serves government badly in crypto battles


📈 7.44 Punkte

📌 FOCUS 12/2016: Lufthansa startet Surfen auf innerdeutschen Flügen im zweiten ...


📈 7.44 Punkte

📌 [dos] - Micro Focus Rumba+ 9.4 - Multiple Stack Buffer Overflow Vulnerabilities


📈 7.44 Punkte

📌 Micro Focus Rumba+ 9.4 Buffer Overflow


📈 7.44 Punkte

📌 Bugtraq: SEC Consult SA-20160725-0 :: Multiple vulnerabilities in Micro Focus (Novell) Filr


📈 7.44 Punkte

📌 Application Lifecycle Management: Micro Focus kauft Serena


📈 7.44 Punkte

📌 Micro Focus Novell Service Desk bis 7.1 HQL Handler downloadFile entityName erweiterte Rechte


📈 7.44 Punkte

📌 Micro Focus Filr CSRF / XSS / Code Execution


📈 7.44 Punkte

📌 [webapps] - Micro Focus Filr 2 2.0.0.421, Filr 1.2 1.2.0.846 - Multiple Vulnerabilities


📈 7.44 Punkte

📌 Insider Threats in India: Is It Time to Focus on Privileged Users?


📈 7.44 Punkte

📌 Micro Focus Novell Service Desk bis 7.1 multipart/form-data Handler LiveTime.woa POST Request Directory Traversal


📈 7.44 Punkte

📌 Cyanogen Inc. Undergoes Massive Layoffs, May Shift Focus to Apps


📈 7.44 Punkte

📌 Bugtraq: SEC Consult SA-20160825-0 :: Multiple vulnerabilities in Micro Focus (Novell) GroupWise


📈 7.44 Punkte

📌 Micro Focus GroupWise Cross Site Scripting / Overflows


📈 7.44 Punkte

📌 Micro Focus: HP Enterprise verkauft Software für 2,5 Milliarden Dollar


📈 7.44 Punkte

📌 HPE-Micro-Focus-Fusion: Ein neuer alter ALM-Riese – oder der Sieg von Open Source


📈 7.44 Punkte

📌 Panasonic-Systemkamera G81: wetterfeste Mittelklasse-Spiegellose mit Focus-Stacking-Funktion


📈 7.44 Punkte

📌 Micro Focus Novell Service Desk bis 7.1 tf_aManufacturerCity Cross Site Scripting


📈 7.44 Punkte

📌 Google Shifts Focus to 3rd-Party Driver Bugs in Latest Android Security Bulletin


📈 7.44 Punkte

📌 FS-ISAC's FSARC Will Focus on Deep Analysis and Long-Term Strategies for Resilience (October 24, 2016)


📈 7.44 Punkte

📌 [dos] - Micro Focus Rumba 9.4 - Local Denial of Service


📈 7.44 Punkte

📌 [dos] - Micro Focus Rumba 9.3 - ActiveX Stack Buffer Overflow


📈 7.44 Punkte

📌 Micro Focus Rumba 9.3 Active-X Stack Buffer Overflow


📈 7.44 Punkte

📌 Micro Focus Rumba FTP Client 4.x Stack Overflow


📈 7.44 Punkte











matomo