28172 sujets

CSS et mise en forme, CSS3

Salut a tous ....

je doit bossé sur un webshop qui a été devlopper sur webdev ( Smiley decu )
et la seul chose que je peut modifier est un fichier css.

j'aimerais selectionner seulement le premier tableau de la page et pas les autres. mais il ont ni ID ni Class.

qqun à une idée.
Administrateur
Hello,

Si ce n'est pas forcément à rendre compatible sur IE6*, il y a ça :
table:first-child {...}


* et en espérant qu'il n'y ait pas de tables imbriquées
Modifié par Raphael (03 Feb 2009 - 16:11)
Raphael a écrit :
Si ce n'est pas forcément à rendre compatible sur IE6, il y a ça :
table:first-child {...}

Attention, cela ne fonctionnera que si le tableau est le premier élément d'un conteneur donné. À titre d'exemple, table:first-child ne marchera pas dans un code tel que celui-ci:

<h1>hello world</h1>
<table>
	<tr>
		<td>foo</td>
	</tr>
</table>
<table>
	<tr>
		<td>bar</td>
	</tr>
</table>
Je risque la proposition suivante:

Tables non-imbriquées:
table { prop-1 }
table + table { prop-2 }
etc.

Oú 'prop-2' défait ce que 'prop-1' a fait...

Tables imbriquées:
table { prop-1 }
table table { prop-2 }
etc.


Mais ça risque d'être un chouia compliqué s'il faut combiner les deux... Smiley decu
Benjamin D.C. a écrit :

Attention, cela ne fonctionnera que si le tableau est le premier élément d'un conteneur donné. À titre d'exemple, table:first-child ne marchera pas dans un code tel que celui-ci:

<h1>hello world</h1>
<table>
	<tr>
		<td>foo</td>
	</tr>
</table>
<table>	<tr>
		<td>bar</td>
	</tr>
</table>

Dans ce cas ne pourrait-on pas utiliser le sélecteur adjacent "+" ? (en supposant qu'il n'y ai qu'un seul <h1>)

h1 + table {
... }


Et s'il y a plusieurs <h1> et que l'on veut sélectionner seulement le premier tableau qui suit le premier <h1> :

<h1>hello world</h1>
<table>
	<tr>
		<td>foo</td>
	</tr>
</table>
<table>
	<tr>
		<td>bar</td>
	</tr>
</table>
<h1>hello world, le retour</h1>
<table>
	<tr>
		<td>foo²</td>
	</tr>
</table>
<table>
	<tr>
		<td>bar²</td>
	</tr>
</table>


Cela donnerait :

h1:first-child + table {
... }


Smiley biggol
Modifié par BeliG (03 Feb 2009 - 18:00)
BeliG a écrit :
Dans ce cas ne pourrait-on pas utiliser le sélecteur adjacent "+" ?

Si tout à fait, mais les nombreuses solutions de ciblage qu'on pourrait proposer ne valent pas grand chose sans contexte réel…
Bref, jerboa, un peu plus d'infos seraient les bienvenues. Smiley cligne
Ou s'il y a des tableaux imbriqués mais que le tableau visé est l'unique enfant d'un élément que tu peux viser:
#parent > table

Mais même remarque que Benjamin: on parle un peu dans le vide, là. Smiley cligne

PS: si le tableau n'a ni id ni class, mieux vaut ne pas l'exposer.
Modifié par Florent V. (03 Feb 2009 - 19:14)
Waow super pleins de pistes à explorer .

je vais malheureusement pas vous monter le code enfin c'est mieux pour vous (je sais pas si c'est webdev qui produit un code de m. ou le codeur qui est pas bon.)

mais je vous donnerais le liens plus tard ... dans tous les cas merci je vais creuser tous ça
Modifié par jerboa (04 Feb 2009 - 08:32)