28172 sujets

CSS et mise en forme, CSS3

Bonjour,

J'ai une contrainte.
Un paragraphe textuel, une liste en fait qui se présente comme ça :
<td class="cell-droite">
- Tuner AM/FM<br />
- Lecture CD-R, CD-RW, MP3, WMA, WAV<br />
- Fa&ccedil;ade Amovible<br />
- Illumination de la fen&ecirc;tre d'affichage Choix entre 10 combinaisons de couleurs<br />
</td>

Désolé, je reçois le code comme ça. Je ne peux pas modifier les br et les replacer par des li, ce serait trop simple...

Y a t'il moyen, avec ça, de créer une indentation négative qui me permettrait d'avoir une liste propre (tout le côté gauche du texte aligné et les tirets à l'extérieur du texte) ?

J'ai cherché plein de combinaisons possibles avec par exple des
td.cell-droite br > * {text-indent:-6px;}

A marche pô.
Zavez une astuce vous ? Smiley eek
Modifié par elfif (20 Nov 2008 - 06:43)
Et ton code <td> blabla </> tu l'injectes dans quoi ? dans des <tr> </tr> ? des div ?
parce que dans ce cas un simple :

 td.cell-droite{ padding-left:50px; }


suffit.
elfif a écrit :
J'ai cherché plein de combinaisons possibles avec par exple des
td.cell-droite br > * {text-indent:-6px;}
A marche pô.

Normal, tu vises des éléments qui n'existent pas, vu que tes BR ne contiennent rien!
Les BR ne désignent pas les lignes de texte, mais le simple retour à la ligne. En gros, en CSS on ne peut pas en faire grand chose, sauf un display: none.

elfif a écrit :
Désolé, je reçois le code comme ça. Je ne peux pas modifier les br et les replacer par des li, ce serait trop simple...

Well, you're fucked.

Seule possibilité: en JavaScript, récupérer le contenu du paragraphe, le parser, et générer un beau UL/LI à la place de ce paragraphe. Smiley smile
altenide a écrit :
un simple :

 td.cell-droite{ padding-left:50px; }


suffit.


Aaaah, c'est faux ça !
Ca me donnera juste un bel alignement à gauche de tous mes paragraphes et pis c'est tout, avec les - alignés sur les retours automatiques à la ligne, ce que je veux justement éliminer...
Florent V. a écrit :

Seule possibilité: en JavaScript, récupérer le contenu du paragraphe, le parser, et générer un beau UL/LI à la place de ce paragraphe. Smiley smile


Ouais, c'est bien ce que je me disais, un truc de fou, bien trop complexe pour moi.
Bon en fouinant partout, je n'avais pas trouvé de solution en CSS. Du coup, j'ai pleuré comme un bon gros madelon (c'est une madeleine mâle !) devant mon développeur préféré, qui a finalement trouvé le moyen de me remplacer les br par des p qui encadrent chaque ligne. Le bonheur !
J'ai pu mettre des puces exotiques à souhait et un paragraphe propre bien paddé comme on les aime Smiley smile

Raaaahhh, lovely css.
Sinon PHP sait très facilement remplacer - par <li> et <br /> par </li>, et rajouter des <ul>/<ol> là où il faut. Du coup tu as des vraies listes plutôt que des paragraphes.
elfif a écrit :

Y a t'il moyen, avec ça, de créer une indentation négative qui me permettrait d'avoir une liste propre (tout le côté gauche du texte aligné et les tirets à l'extérieur du texte) ?


ce n'était pas explicite dans ta question ici Smiley smile

donc seule solution parse ton code comme cela a été dit plus haut. Smiley smile
Euh, moi j'ai pas compris Smiley biggol

a écrit :
Y a t'il moyen, avec ça, de créer une indentation négative qui me permettrait d'avoir une liste propre (tout le côté gauche du texte aligné et les tirets à l'extérieur du texte) ?


Tu veux aligner le texte sur la gauche et faire sortir les tirets du <td> c'est ça ?
Désolé d'avoir laissé le sujet ouvert. Je viens d'y coller un [Résolu].
En effet, comme dis plus haut, les <br /> ont été remplacés par des <p> par le développeur du site, ce qui m'a permis d'éviter de parser quoi que ce soit et d'appliquer un style sur mes blocs <p>.

Merci encore à vous pour vos réponses