<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/"><channel><title>Clavier - Louis Fortin</title><link>https://beta.lfortin.ovh/etiquettes/clavier/</link><description>Le site personnel de Louis Fortin : des billets, des projets, et un thème construit pour être lisible par tout le monde.</description><language>fr-ca</language><copyright>2026-2026 Louis Fortin</copyright><generator>Hugo 0.164.0</generator><lastBuildDate>Sat, 18 Jul 2026 09:00:00 -0400</lastBuildDate><atom:link href="https://beta.lfortin.ovh/etiquettes/clavier/flux.xml" rel="self" type="application/rss+xml"/><item><title>Pourquoi l'anneau de focus n'est pas une verrue</title><link>https://beta.lfortin.ovh/blog/pourquoi-le-focus-compte/</link><guid isPermaLink="true">https://beta.lfortin.ovh/blog/pourquoi-le-focus-compte/</guid><pubDate>Sat, 18 Jul 2026 09:00:00 -0400</pubDate><dc:creator>Louis Fortin</dc:creator><category>Accessibilité</category><category>CSS</category><category>Clavier</category><description>Le contour bleu que tout le monde veut supprimer est, pour une partie des gens, la seule façon de savoir où ils sont.</description><content:encoded><![CDATA[<!-- TEXTE DE DÉPART, à remplacer ou à garder, comme vous voulez. -->
<p>Il existe une ligne de CSS que presque tout le monde a écrite au moins une
fois :</p>
<div class="bloc-code"
  data-copier="Copier le code"
  data-copie="Code copié."
  data-copie-impossible="La copie n&#39;a pas fonctionné. Sélectionnez le texte du bloc et copiez-le avec le clavier."
  data-icone-copier="

"
  data-icone-coche="
">

  <div class="bloc-code__barre">
    <span class="bloc-code__langage">CSS</span>
  </div><pre tabindex="0" role="region" aria-label="Bloc de code en CSS"><code class="langage-css"><span class="line"><span class="cl"><span class="p">:</span><span class="nd">focus</span> <span class="p">{</span>
</span></span><span class="line"><span class="cl">  <span class="k">outline</span><span class="p">:</span> <span class="kc">none</span><span class="p">;</span>
</span></span><span class="line"><span class="cl"><span class="p">}</span></span></span></code></pre></div>
<p>Elle a l&rsquo;air inoffensive. Elle retire un contour bleu que le navigateur dessine
autour du bouton qu&rsquo;on vient d&rsquo;atteindre, et que beaucoup de gens trouvent laid.</p>
<div class="titre-avec-ancre">
  <h2 id="ce-quelle-retire-vraiment">Ce qu&rsquo;elle retire vraiment</h2>
  
</div>
<p>Pour qui se sert d&rsquo;une souris, le focus est presque invisible : le pointeur
indique la position, et le contour ne fait que doubler une information qu&rsquo;on a
déjà.</p>
<p>Pour qui navigue au clavier, à la commande vocale, ou avec un contacteur, le
focus <strong>est</strong> la position. C&rsquo;est le seul endroit où la prochaine touche va
agir. Sans indicateur visible, il faut appuyer sur Tab et deviner. C&rsquo;est comme
déplacer un curseur de texte invisible.</p>
<div class="encadre encadre--avertissement" role="note">
    <p class="encadre__titre"><svg class="icone" viewBox="0 0 24 24" aria-hidden="true" focusable="false"><path d="m10.3 3.9-8.5 14.2A2 2 0 0 0 3.5 21h17a2 2 0 0 0 1.7-3L13.7 3.9a2 2 0 0 0-3.4 0z"/>
<path d="M12 9.5v4"/>
<path d="M12 17.2h.01"/>
</svg>Avertissement
    </p>
    <p>Un contour retiré sans remplacement fait échouer le critère 2.4.7 des règles
du W3C. Ce n&rsquo;est pas une préférence esthétique, c&rsquo;est un manquement mesurable.</p>
  </div><div class="titre-avec-ancre">
  <h2 id="ce-quil-faut-faire-à-la-place">Ce qu&rsquo;il faut faire à la place</h2>
  
</div>
<p>Ne pas retirer le contour : le dessiner mieux. Depuis que <code>:focus-visible</code>
existe, le navigateur sait déjà distinguer un focus donné par le clavier d&rsquo;un
focus donné par un clic. Le contour n&rsquo;apparaît donc que quand il sert.</p>
<div class="bloc-code"
  data-copier="Copier le code"
  data-copie="Code copié."
  data-copie-impossible="La copie n&#39;a pas fonctionné. Sélectionnez le texte du bloc et copiez-le avec le clavier."
  data-icone-copier="

"
  data-icone-coche="
">

  <div class="bloc-code__barre">
    <span class="bloc-code__langage">CSS</span>
  </div><pre tabindex="0" role="region" aria-label="Bloc de code en CSS"><code class="langage-css"><span class="line"><span class="cl"><span class="p">:</span><span class="nd">focus-visible</span> <span class="p">{</span>
</span></span><span class="line"><span class="cl">  <span class="k">outline</span><span class="p">:</span> <span class="mi">3</span><span class="kt">px</span> <span class="kc">solid</span> <span class="nf">var</span><span class="p">(</span><span class="o">--</span><span class="n">couleur</span><span class="o">-</span><span class="n">focus</span><span class="p">);</span>
</span></span><span class="line"><span class="cl">  <span class="k">outline-offset</span><span class="p">:</span> <span class="mi">3</span><span class="kt">px</span><span class="p">;</span>
</span></span><span class="line"><span class="cl"><span class="p">}</span></span></span></code></pre></div>
<p>Le décalage n&rsquo;est pas cosmétique. Il fait que la couleur voisine de l&rsquo;anneau
est toujours le fond de la page, jamais celui du bouton entouré. Sans lui, un
anneau bleu autour d&rsquo;un bouton bleu n&rsquo;a aucun contraste avec ce qu&rsquo;il entoure.</p>
<p>C&rsquo;est exactement ce que fait ce site, et vous pouvez le vérifier : appuyez sur
Tab.</p>
]]></content:encoded></item></channel></rss>