28172 sujets

CSS et mise en forme, CSS3

Salut à tous,

j'aurais besoin d'un coup de main, je m'amuse à intégrer les images d'un bandeau, et j'ai essayé de pousser un peu le concept des sprites CSS. En fait, tous les éléments de mon bandeau sont dans une unique image, y compris les versions "rollovées" (qui sont juste en-dessous des versions normales).

J'ai pu les positionner sans souci à grand renforts de background-position, par contre, je voudrais un moyen pour tous les rollovers de dire : "bouge le background seulement sur l'axe Y et conserve la valeur déjà définie pour X". (sans devoir tous mes les taper à la pogne pour chaque élément)

Il existe bien une propriété background-position-y (trouvée sur le net), mais j'ai l'impression qu'elle ne marche pas sous Firefox. Et le validateur W3C vient de me le confirmer à l'instant, c'est pas standard. Smiley bawling

Des idées géniales ?

D'avance merci !
Modifié par Nico3333fr (19 Feb 2010 - 13:15)
Il existe des propriétés background-position-horizontal et background-position-vertical, mais en XSL. Smiley cligne

En CSS 2.1, tu n'as pas d'autre choix que de répéter la valeur de background-position qui ne change pas, sauf si cette valeur est center : en effet, si tu l'omets, cela revient à dire que tu sous-entends ce mot-clé-là, comme le dit la spécification CSS 2.1 à la section background-position :
La spécification CSS 2.1 a écrit :
If only one value is specified, the second value is assumed to be 'center'.

Et CSS 3 n'apporte aucune évolution à ce sujet, du moins à l'heure actuelle.
Modifié par Victor BRITO (19 Feb 2010 - 12:01)
Victor BRITO a écrit :
Et CSS 3 n'apporte aucune évolution à ce sujet, du moins à l'heure actuelle.


Argh... mé euh !!! Smiley bawling


Bon, bin, je vais faire du copier-coller, dommage, ma CSS ne sera pas parfaitement "factorisée".
Smiley cligne
Je me suis retrouvé avec le même problème, du coup ça alourdit bien le CSS inutilement avec toutes ces répétions.
Bha, il y a bien cette page :
http://lists.w3.org/Archives/Public/www-style/

Mais j'ai fait deux envois et je n'ai jamais eu de réponse. J'avais proposé d'utiliser une valeur type « no-change » pour garder la valeur précédente sans la changer. Ce qui peut être pratique quand on utilise aussi plusieurs fond, plusieurs style d'ombres, etc. Bref tout ce qui peut comporter plusieurs information qu'on ne va pas s'amuser à répéter. Pour factoriser une feuille de style, ça peut être pas mal. Exemple :
background-position: no-change 2px;
text-shadow: no-change, 2px 2px 15px blue;