Bonjour,
Le problème que je rencontre me semble intéressant en Responsive.
J'ai un tableau tout simple en 3 colonnes et deux lignes.
Sur petit écran, je veux que "Description produit deux" s'affiche sous "Titre deux", ne me demandez pas pourquoi c'est juste un exemple pour poser le problème.
Je veux arriver à l'équivalent de cette structure :
Comme display: table présente la grande faiblesse de ne pas agir sur rowspan et colspan je ne vois pas comment m'en sortir avec ce mode de display.
Peut-être un javascript pour modifier rowpan et colspan ?
J'ai pensé à passer par display Grid.
Je n'ai pas trouvé de documentation sur le traitement d'une table en display: grid.
Si table {display: grid} ce sont les tr qui sont grid-item alors que ce sont les td que je veux bouger.
Je précise que je ne veux pas à avoir à déclarer de largeur pour mes cellules, c'est le contenu qui fixe la largeur.
Une solution très peu élégante serait de rentrer les deux structures dans le html et d'afficher celle voulue selon media-query.
Modifié par boteha_2 (14 Jul 2019 - 15:18)
Le problème que je rencontre me semble intéressant en Responsive.
J'ai un tableau tout simple en 3 colonnes et deux lignes.
<table>
<tr><td>Un>/td><td>Titre un</td><td><Description produit un</td></tr>
<tr><td>Deux></td><td>Titre deux</td><td><Description produit deux</td></tr>
<table>
Sur petit écran, je veux que "Description produit deux" s'affiche sous "Titre deux", ne me demandez pas pourquoi c'est juste un exemple pour poser le problème.
Je veux arriver à l'équivalent de cette structure :
<table>
<tr><td>Un>/td><td>Titre un</td><Description produit un</td></tr>
<tr><td rowspan="2">Deux></td><td colspan="2">Titre deux</td></tr>
<tr><td colspan="2"><Description produit deux</td></tr>
<table>
Comme display: table présente la grande faiblesse de ne pas agir sur rowspan et colspan je ne vois pas comment m'en sortir avec ce mode de display.
Peut-être un javascript pour modifier rowpan et colspan ?
J'ai pensé à passer par display Grid.
Je n'ai pas trouvé de documentation sur le traitement d'une table en display: grid.
Si table {display: grid} ce sont les tr qui sont grid-item alors que ce sont les td que je veux bouger.
Je précise que je ne veux pas à avoir à déclarer de largeur pour mes cellules, c'est le contenu qui fixe la largeur.
Une solution très peu élégante serait de rentrer les deux structures dans le html et d'afficher celle voulue selon media-query.
<table>
<tr><td>Un>/td><td>Titre un</td><Description produit un</td></tr>
<tr class="grand"><td>Deux></td><td>Titre deux</td><td><Description produit deux</td></tr>
<tr class="petit"><td rowspan="2">Deux></td><td colspan="2">Titre deux</td></tr>
<tr class="petit"><td colspan="2"><Description produit deux</td></tr>
<table>
tr.grand {display: table-row}
tr.petit {display: none}
@media screen and (max-width: 480px)
{
tr.grand {display: none}
tr.petit {display: table-row}
}
Modifié par boteha_2 (14 Jul 2019 - 15:18)