Suivez les fils RSS
 

Des livres incontournables pour tout maîtriser

  • CSS avancées - vers HTML5 et CSS3
  • HTML5
  • CSS2
  • PHP5 avanc�
  • Memento MySQL
  • Memento CSS 3
  • Memento XHTML
  • WordPress 3 100% pratique
  • jQuery et jQuery UI
Auteur
David Latapie
#
Citer
1+1=3
70 Posts
Bonjour,

Mon principal obstacle à l'utilisation du XHTML 1.1 est que je ne me souviens jamais comment styler xml:lang (lang n'étant plus valide en XHTML 1.1)

Pourriez-vous me dire comment transcrire cette règle en CSS :

a écrit :
Si le texte n'est pas dans la langue du document, le mettre en italique.


Je suppose que la réponse fera intervenir le pseudo-selecteur not (CSS3, mais ça me va) et une spécificité exotique de CSS pour sélectionner xml:lang.

Merci pour vos réponses.

</david_latapie>

http://david.latapie.name/ 
^
Heyoan
#
Citer
Modérateur
8101 Posts
Salut,

David Latapie a écrit :
Mon principal obstacle à l'utilisation du XHTML 1.1 est que [...]
Le mien est que je ne fais jamais du vrai xml. murf

David Latapie a écrit :
Pourriez-vous me dire comment transcrire cette règle en CSS :
Si le texte n'est pas dans la langue du document, le mettre en italique.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Test</title>
<style type="text/css">
html:lang(fr) *:not(:lang(fr)), html:lang(en) *:not(:lang(en)) {
	font-style: italic;
}
</style>
</head>
<body>
<p>Ce n'est pas difficile de parler français... c'est fastoche !</p>
<p lang="en">It's not difficult to speak english... it's facult !</p>
<p>Du contenu en français...</p>
</body>
</html>
Voir les sélecteurs CSS 3 et notamment la pseudo-classe :lang.

^
David Latapie
#
Citer
1+1=3
70 Posts
Je n'avais pas du tout pensé à l'imbrication de règles (je me serais arrêté à un *:not(:lang(fr))). Merci de l'idée !

Sais-tu s'il est possible d'abstraire un peu plus la règle, genre

<style type="text/css">
html:lang(fr) *:not(:lang(baselanguage)) {font-style:italic}
</style>


(c'est de « baselanguage » que je parles)

À part ça, je souhaite appliquer la même règle à xml:lang, mais simplement remplacer lang par xml:lang ne fonctionnera pas (du fait du deux-points). Une idée ?

Merci déjà pour ce que tu as écris !

</david_latapie>

http://david.latapie.name/ 
^
fvsch
#
Citer
20100 Posts
- Il me semble qu'utiliser xml:lang fonctionnera avec le sélecteur CSS :lang(), du moment que ton document est bien un document XML (XHTML servi en application/xhtml+xml, notamment), et pas du HTML déguisé.

- Il n'y a pas de moyen en CSS pour récupérer la valeur de l'attribut lang dans <html lang="..."> ou <html xml:lang="...">, pour ensuite utiliser cette valeur dans tes sélecteurs CSS.

- Pour ma part, quand j'ai une phrase ou une locution dans une langue différente de la langue du contenu principal, et que je veux afficher ce texte en italique pour suivre les conventions typographiques, j'utilise <i lang="...">...</i>.

http://fvsch.com 
^
Victor BRITO
#
Citer
Je ne suis pas mort, je dors
2385 Posts
Heyoan a écrit :
Voir les sélecteurs CSS 3 et notamment la pseudo-classe :lang.

Pseudo-classe qui existe déjà en CSS 2.1, soit dit en passant. cligne

En campagne contre la balkanisation du Web, pour rappeler qu'il existe un seul Web
Mon avatar : l'ancien département de la Seine (le grand 75 d'avant 1968)

http://www.victor-brito.fr 
^
Laurent Denis
#
Citer
7979 Posts
A savoir: vu le support actuel d'xml:lang dans les lecteurs d'écran, un document qui ne précise pas d'attribut lang sera fréquemment non accessible...

Ne parlons pas de choses nouvelles. Commencez par ne pas détourner CSS de son objet, ce que vous faites immanquablement avec des techniques sexy qu'on enseigne ici.

http://www.temesis.com 
^
David Latapie
#
Citer
1+1=3
70 Posts
Laurent Denis a écrit :
A savoir: vu le support actuel d'xml:lang dans les lecteurs d'écran, un document qui ne précise pas d'attribut lang sera fréquemment non accessible...


Je n'y avais pensé ! Merci Laurent.

</david_latapie>

http://david.latapie.name/ 
^