::after (:after)

  • Raccourci de la révision : CSS/:after
  • Titre de la révision : ::after (:after)
  • ID de la révision : 448279
  • Créé :
  • Créateur : FredB
  • Version actuelle ? Oui
  • Commentaire

Contenu de la révision

{{ CSSRef() }}

Résumé

Le pseudo-élément CSS :after cible le dernier enfant virtuel de l'élément sélectionné. Généralement utilisé pour ajouter du contenu esthétique à un élément, en utilisant la propriété CSS {{cssxref("content")}}. C'est un élément de type en-ligne par défaut.

Syntaxe

element:after  { propriétés de style }  /* Syntaxe CSS2 */

element::after { propriétés de style }  /* Syntaxe CSS3 */

La notation ::after a été introduite avec CSS 3 de manière à différencier les pseudo-classes et les pseudo-éléments. Les navigateurs acceptent aussi la notation :after introduite dans CSS 2.

Exemples

Usage simple

.texte-ennuyeux:after {
   content:    "Merci à vous d'avoir lu jusque là !"; 
   font-size:  small; 
   color:      red;
   background: gray; 
}

Bulles d'information

L'exemple suivant montre l'utilisation du pseudo-élément ::after avec l'expression CSS {{ cssxref("attr") }} et un attribut personnalisé data data-descr pour créer une bulle d'information seulement en CSS.

<!doctype html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>CSS tooltips</title>
<style type="text/css">
    span[data-descr] {
        position: relative;
        text-decoration: underline;
        color: #00F;
        cursor: help;
    }

    span[data-descr]:hover::after {
        content: attr(data-descr);
        position: absolute;
        left: 0;
        top: 24px;
        min-width: 200px;
        border: 1px #aaaaaa solid;
        border-radius: 10px;
        background-color: #ffffcc;
        padding: 12px;
        color: #000000;
        font-size: 14px;
    }
</style>
</head>
 
<body>

    <p>This is an example <span data-descr="collection of words and punctuation">text</span> with a few <span data-descr="small popups which also hide again">tooltips</span>. Take a <span data-descr="not to be taken literally">look</span>...
    </p>

</body>
</html>

Voir cet exemple en action

Spécifications

Spécification Statut Commentaire
{{ Specname("CSS3 Transitions", "#animatable-properties", "") }} {{ Spec2("CSS3 Transitions")}} Permet les transitions sur les propriétés définies sur les pseudo-éléments.
{{ Specname("CSS3 Animations", "", "") }} {{ Spec2("CSS3 Animations")}} Permet les animations sur les propriétés définies sur les pseudo-éléments.
{{ SpecName('CSS3 Selectors', '#gen-content', '::after') }} {{ Spec2('CSS3 Selectors') }} Introduit la syntaxe à double deux-points.
{{ SpecName('CSS2.1', 'generate.html#before-after-content', '::after') }} {{ Spec2('CSS2.1') }} Définition initiale, utilisant la syntaxe à simple deux-points.

 

Compatibilité des navigateurs

{{ CompatibilityTable() }}

Fonction Chrome Firefox (Gecko) Internet Explorer Opera Safari (WebKit)
Support de :after {{ CompatVersionUnknown() }} {{ CompatGeckoDesktop("1.0") }} [1] 8.0 {{ CompatOpera("4") }} 4.0
Support de ::after {{ CompatVersionUnknown() }} {{ CompatGeckoDesktop("1.5") }} [1] 9.0 {{ CompatOpera("7") }} 4.0
Support des animations et transitions 26 {{ CompatGeckoDesktop("2.0") }} {{CompatNo}} {{ CompatNo }} {{ CompatNo }}
Fonction Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Support de :after {{ CompatUnknown() }} {{ CompatUnknown() }} {{ CompatUnknown() }} {{ CompatUnknown() }} {{ CompatUnknown() }} {{ CompatUnknown() }}
Support de ::after {{ CompatUnknown() }} {{ CompatUnknown() }} {{ CompatUnknown() }} {{ CompatUnknown() }} {{ CompatUnknown() }} {{ CompatUnknown() }}
Support des animations et transitions 26 {{ CompatGeckoDesktop("4.0") }} {{CompatNo}} {{ CompatNo }} {{ CompatNo }} {{ CompatNo }}

[1] Avant la version 3.5, Firefox n'implémentait que la version CSS 2.0 de :after. Les propriétés non-éligibles étaient {{cssxref("position")}}, {{cssxref("float")}}, list-style-* et certaines propriétés d'affichage. Firefox 3.5 enlève ces restrictions.

Voir également

{{ Cssxref(":before") }}, {{ cssxref("content") }}

Source de la révision

<p>{{ CSSRef() }}</p>
<h2 id="R.C3.A9sum.C3.A9">Résumé</h2>
<p>Le <a href="/fr/docs/CSS/Pseudo-éléments" title="Pseudo-éléments">pseudo-élément</a> CSS <code>:after</code> cible le dernier enfant virtuel de l'élément sélectionné. Généralement utilisé pour ajouter du contenu esthétique à un élément, en utilisant la propriété CSS {{cssxref("content")}}. C'est un élément de type en-ligne par défaut.</p>
<h2 id="Syntaxe">Syntaxe</h2>
<pre class="syntaxbox">
element:after  { <em>propriétés de style</em> }  /* Syntaxe CSS2 */

element::after { <em>propriétés de style</em> }  /* Syntaxe CSS3 */</pre>
<p>La notation <code>::after</code> a été introduite avec CSS 3 de manière à différencier les <a href="/fr/docs/CSS/Pseudo-classes" title="Pseudo-classes">pseudo-classes</a> et les pseudo-éléments. Les navigateurs acceptent aussi la notation <code>:after</code> introduite dans CSS 2.</p>
<h2 id="Examples" name="Examples">Exemples</h2>
<h3 id="Usage_simple">Usage simple</h3>
<pre class="brush: css">
.texte-ennuyeux:after {
   content:    "Merci à vous d'avoir lu jusque là !"; 
   font-size:  small; 
   color:      red;
   background: gray; 
}
</pre>
<h3 id="Bulles_d'information">Bulles d'information</h3>
<p>L'exemple suivant montre l'utilisation du <a href="/fr/docs/CSS/Pseudo-éléments" title="Pseudo-éléments">pseudo-élément</a> <code>::after </code>avec l'expression CSS {{ cssxref("attr") }} et un <a href="/fr/docs/Web/HTML/Global_attributes#data-*" title="/fr/docs/Web/HTML/Global_attributes#data-*">attribut personnalisé</a> data <code>data-descr</code> pour créer une bulle d'information seulement en CSS.</p>
<pre class="brush: html">
&lt;!doctype html&gt;
&lt;html&gt;
&lt;head&gt;
&lt;meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /&gt;
&lt;title&gt;CSS tooltips&lt;/title&gt;
&lt;style type="text/css"&gt;
&nbsp;&nbsp; &nbsp;span[data-descr] {
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;position: relative;
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;text-decoration: underline;
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;color: #00F;
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;cursor: help;
&nbsp;&nbsp; &nbsp;}

&nbsp;&nbsp; &nbsp;span[data-descr]:hover::after {
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;content: attr(data-descr);
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;position: absolute;
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;left: 0;
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;top: 24px;
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;min-width: 200px;
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;border: 1px #aaaaaa solid;
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;border-radius: 10px;
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;background-color: #ffffcc;
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;padding: 12px;
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;color: #000000;
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;font-size: 14px;
&nbsp;&nbsp; &nbsp;}
&lt;/style&gt;
&lt;/head&gt;
&nbsp;
&lt;body&gt;

&nbsp;&nbsp; &nbsp;&lt;p&gt;This is an example &lt;span data-descr="collection of words and punctuation"&gt;text&lt;/span&gt; with a few &lt;span data-descr="small popups which also hide again"&gt;tooltips&lt;/span&gt;. Take a &lt;span data-descr="not to be taken literally"&gt;look&lt;/span&gt;...
&nbsp;&nbsp; &nbsp;&lt;/p&gt;

&lt;/body&gt;
&lt;/html&gt;</pre>
<p><a href="https://developer.mozilla.org/files/4591/css-only_tooltips.html" title="css-only_tooltips.html">Voir cet exemple en action</a></p>
<h2 id="Sp.C3.A9cifications">Spécifications</h2>
<table class="compat-table">
  <thead>
    <tr style="background-color: rgb(255, 204, 255);">
      <th scope="col">Spécification</th>
      <th scope="col">Statut</th>
      <th scope="col">Commentaire</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>{{ Specname("CSS3 Transitions", "#animatable-properties", "") }}</td>
      <td>{{ Spec2("CSS3 Transitions")}}</td>
      <td>Permet les transitions sur les propriétés définies sur les pseudo-éléments.</td>
    </tr>
    <tr>
      <td>{{ Specname("CSS3 Animations", "", "") }}</td>
      <td>{{ Spec2("CSS3 Animations")}}</td>
      <td>Permet les animations sur les propriétés définies sur les pseudo-éléments.</td>
    </tr>
    <tr>
      <td>{{ SpecName('CSS3 Selectors', '#gen-content', '::after') }}</td>
      <td>{{ Spec2('CSS3 Selectors') }}</td>
      <td>Introduit la syntaxe à double deux-points.</td>
    </tr>
    <tr>
      <td>{{ SpecName('CSS2.1', 'generate.html#before-after-content', '::after') }}</td>
      <td>{{ Spec2('CSS2.1') }}</td>
      <td>Définition initiale, utilisant la syntaxe à simple deux-points.</td>
    </tr>
    <tr>
    </tr>
  </tbody>
</table>
<p>&nbsp;</p>
<h2 id="Compatibilit.C3.A9_des_navigateurs">Compatibilité des navigateurs</h2>
<p>{{ CompatibilityTable() }}</p>
<div id="compat-desktop">
  <table class="compat-table">
    <tbody>
      <tr>
        <th>Fonction</th>
        <th>Chrome</th>
        <th>Firefox (Gecko)</th>
        <th>Internet Explorer</th>
        <th>Opera</th>
        <th>Safari (WebKit)</th>
      </tr>
      <tr>
        <td>Support de <code>:after</code></td>
        <td>{{ CompatVersionUnknown() }}</td>
        <td>{{ CompatGeckoDesktop("1.0") }} [1]</td>
        <td>8.0</td>
        <td>{{ CompatOpera("4") }}</td>
        <td>4.0</td>
      </tr>
      <tr>
        <td>Support de <code>::after</code></td>
        <td>{{ CompatVersionUnknown() }}</td>
        <td>{{ CompatGeckoDesktop("1.5") }} [1]</td>
        <td>9.0</td>
        <td>{{ CompatOpera("7") }}</td>
        <td>4.0</td>
      </tr>
      <tr>
        <td>Support des animations et transitions</td>
        <td>26</td>
        <td>{{ CompatGeckoDesktop("2.0") }}</td>
        <td>{{CompatNo}}</td>
        <td>{{ CompatNo }}</td>
        <td>{{ CompatNo }}</td>
      </tr>
    </tbody>
  </table>
</div>
<div id="compat-mobile">
  <table class="compat-table">
    <tbody>
      <tr>
        <th>Fonction</th>
        <th>Android</th>
        <th>Chrome for Android</th>
        <th>Firefox Mobile (Gecko)</th>
        <th>IE Mobile</th>
        <th>Opera Mobile</th>
        <th>Safari Mobile</th>
      </tr>
      <tr>
        <td>Support de <code>:after</code></td>
        <td>{{ CompatUnknown() }}</td>
        <td>{{ CompatUnknown() }}</td>
        <td>{{ CompatUnknown() }}</td>
        <td>{{ CompatUnknown() }}</td>
        <td>{{ CompatUnknown() }}</td>
        <td>{{ CompatUnknown() }}</td>
      </tr>
      <tr>
        <td>Support de <code>::after</code></td>
        <td>{{ CompatUnknown() }}</td>
        <td>{{ CompatUnknown() }}</td>
        <td>{{ CompatUnknown() }}</td>
        <td>{{ CompatUnknown() }}</td>
        <td>{{ CompatUnknown() }}</td>
        <td>{{ CompatUnknown() }}</td>
      </tr>
      <tr>
        <td>Support des animations et transitions</td>
        <td>26</td>
        <td>{{ CompatGeckoDesktop("4.0") }}</td>
        <td>{{CompatNo}}</td>
        <td>{{ CompatNo }}</td>
        <td>{{ CompatNo }}</td>
        <td>{{ CompatNo }}</td>
      </tr>
    </tbody>
  </table>
</div>
<p>[1] Avant la version 3.5, Firefox n'implémentait que la version CSS 2.0 de <code>:after</code>. Les propriétés non-éligibles étaient {{cssxref("position")}}, {{cssxref("float")}}, list-style-* et certaines propriétés d'affichage. Firefox 3.5 enlève ces restrictions.</p>
<h2 id="Voir_.C3.A9galement">Voir également</h2>
<p>{{ Cssxref(":before") }}, {{ cssxref("content") }}</p>
Revenir à cette révision