28220 sujets

CSS et mise en forme, CSS3

Bonjour a tous,

Voila j'essaye d'optimiser une liste (<TABLE>) qui affiche pour chaque ligne (<TR>) des action possibles. ces actions au depart etait des images dans un tableau d'une ligne avec plusieurs colonnes (Ca prend de la place car en plus j'utilisait du JS pour modifier la couleur de fond des colones pour donner un petit effet de surlignement.

J'ai reussi a supprimer le tableaux et j'utilise maintenant des balise <A> contenant une image avec un CSS. Mon probleme c'est que <A> est un "in-ligne" donc je ne peux specifier une hauteur et largeur pour mon effet de surlignage. si je defini un style="display:block" sur le <A> mon effet refonctionne correctement mais j'au un p**** de retour chariot que je n'arrive pas supprimer.

J'ai reussi a resoudre le probleme en mettant un style="font-size:22px" ou 22px est la hauteur de la zone. Ca fonctionne mais je pense que ce n'est pas tres elegant...

Autre complication, je ne veux pas utiliser "position" car mes icones sont générés dynamiquement et donc dépendant de vos droits, tous les icones ne sont pas affiches...

Merci pour votre aide.
Modifié par arobadol (24 Aug 2006 - 22:15)
Et passer les liens en flottants ? C'est peut-être trop radical, mais ça peut convenir, tout dépend en fait de la mise en page voulue.
Un élément de type en-ligne flottant se comportera comme un élément de type bloc, sauf bien sûr pour le retour chariot... mais le remède peut être pire que le mal, vu que les flottants ne sont pas forcément prévus pour ça.

La solution idéale serait display: inline-block, mais cette propriété est mal supportée par les navigateurs... enfin par les deux principaux navigateurs du marché !

Sinon, on peut peut-être jouer sur les padding, si nécessaire, même pour un élément de type en-ligne.