From 258ba7b4be62d8640477a3bd3146d08b00cb70ec Mon Sep 17 00:00:00 2001 From: julieng Date: Fri, 17 Sep 2021 20:59:20 +0200 Subject: convert content to md --- files/fr/web/css/_colon_defined/index.md | 65 ++++++++++++++++++-------------- 1 file changed, 36 insertions(+), 29 deletions(-) (limited to 'files/fr/web/css/_colon_defined') diff --git a/files/fr/web/css/_colon_defined/index.md b/files/fr/web/css/_colon_defined/index.md index a1bfe2b1b9..fadc318c67 100644 --- a/files/fr/web/css/_colon_defined/index.md +++ b/files/fr/web/css/_colon_defined/index.md @@ -1,6 +1,6 @@ --- title: ':defined' -slug: 'Web/CSS/:defined' +slug: Web/CSS/:defined tags: - CSS - Layout @@ -8,14 +8,15 @@ tags: - Reference - Selector - Web -translation_of: 'Web/CSS/:defined' +translation_of: Web/CSS/:defined browser-compat: css.selectors.defined --- -
{{CSSRef}}
+{{CSSRef}} -

La pseudo-classe :defined représente n'importe quel élément ayant été défini. Cela inclut les éléments standards provenant du navigateur, ainsi que les éléments personnalisés (« custom elements ») ayant correctement été définis (c'est-à-dire grâce à la méthode CustomElementRegistry.define()).

+La [pseudo-classe](/fr/docs/Web/CSS/Pseudo-classes) **`:defined`** représente n'importe quel élément ayant été défini. Cela inclut les éléments standards provenant du navigateur, ainsi que les éléments personnalisés (« _custom elements_ ») ayant correctement été définis (c'est-à-dire grâce à la méthode [`CustomElementRegistry.define()`](/fr/docs/Web/API/CustomElementRegistry/define)). -
/* Cette règle cible tout élément défini */
+```css
+/* Cette règle cible tout élément défini */
 :defined {
   font-style: italic;
 }
@@ -24,19 +25,20 @@ browser-compat: css.selectors.defined
 simple-custom:defined {
   display: block;
 }
-
+``` -

Syntaxe

+## Syntaxe {{csssyntax}} -

Exemples

+## Exemples -

Les fragments de code qui suivent sont tirés du dépôt defined-pseudo-class (voir le résultat en live).

+Les fragments de code qui suivent sont tirés [du dépôt `defined-pseudo-class`](https://github.com/mdn/web-components-examples/tree/master/defined-pseudo-class) ([voir le résultat en _live_](https://mdn.github.io/web-components-examples/defined-pseudo-class/)). -

Pour cette démonstration on définit un élément personnalisé trivial :

+Pour cette démonstration on définit un élément personnalisé trivial : -
customElements.define('simple-custom',
+```js
+customElements.define('simple-custom',
   class extends HTMLElement {
     constructor() {
       super();
@@ -47,17 +49,21 @@ simple-custom:defined {
       let shadowRoot = this.attachShadow({mode: 'open'})
         .appendChild(divElem);
   }
-})
+}) +``` -

On insère ensuite une copie de cet élément dans le document, à côté d'un paragraphe classique {<p> :

+On insère ensuite une copie de cet élément dans le document, à côté d'un paragraphe classique {`

` : -

<simple-custom text="Le texte de l'élément personnalisé"></simple-custom>
+```html
+
 
-<p>Un paragraphe normal</p>
+

Un paragraphe normal

+``` -

Dans la feuille CSS, on inclut d'abord les règles suivantes :

+Dans la feuille CSS, on inclut d'abord les règles suivantes : -
// On utilise deux arrières-plans distincts pour ces deux éléments
+```css
+// On utilise deux arrières-plans distincts pour ces deux éléments
 p {
   background: yellow;
 }
@@ -69,30 +75,31 @@ simple-custom {
 // On met en italique le texte de ces deux éléments
 :defined {
   font-style: italic;
-}
+} +``` -

Ensuite, on fournit les deux règles suivantes afin de masquer les instances de l'élément personnalisé qui ne sont pas définies et, pour celles qui sont définies, on indique que ce sont des éléments de bloc :

+Ensuite, on fournit les deux règles suivantes afin de masquer les instances de l'élément personnalisé qui ne sont pas définies et, pour celles qui sont définies, on indique que ce sont des éléments de bloc : -
simple-custom:not(:defined) {
+```css
+simple-custom:not(:defined) {
   display: none;
 }
 
 simple-custom:defined {
   display: block;
-}
+} +``` -

Ces dernières règles sont utiles lorsqu'on a un élément personnalisé complexe qui met du temps à charger : pour ceux-là, on peut vouloir les masquer jusqu'à ce que la définition soit complète afin de ne pas avoir de scintillement d'éléments non mis en forme sur la page.

+Ces dernières règles sont utiles lorsqu'on a un élément personnalisé complexe qui met du temps à charger : pour ceux-là, on peut vouloir les masquer jusqu'à ce que la définition soit complète afin de ne pas avoir de scintillement d'éléments non mis en forme sur la page. -

Spécifications

+## Spécifications {{Specifications}} -

Compatibilité des navigateurs

+## Compatibilité des navigateurs -

{{Compat}}

+{{Compat}} -

Voir aussi

+## Voir aussi - +- [Les composants web](/fr/docs/Web/Web_Components) -- cgit v1.2.3-54-g00ecf