Zone avec défilement horizontal

Résolu/Fermé
katsuo49 Messages postés 330 Date d'inscription vendredi 19 juin 2009 Statut Membre Dernière intervention 11 novembre 2014 - 8 févr. 2013 à 11:24
katsuo49 Messages postés 330 Date d'inscription vendredi 19 juin 2009 Statut Membre Dernière intervention 11 novembre 2014 - 8 févr. 2013 à 14:19
Bonjour,
Je cherche à réaliser une zone qui contient des tableaux (chacun des tableaux étant dans mon cas 1 élément) et pouvoir les afficher sur une seule ligne avec une scroll-bar horizontal.
J'ai donc regardé la doc (https://www.w3schools.com/cssref/css3_pr_overflow-x.asp officielle comme vous pouvez le voir) et un peu sur le net mais je ne comprend pas pourquoi ce que je fais ne fonctionne pas

la partie du html concernée (autour y'a juste une navbar en fixed et le code mini d'une page) :
<div id="corps" class="bordure">
		<table class="elt">
			<tr><td>a</td></tr>
			<tr><td>b</td></tr>
			<tr><td>c</td></tr>
		</table>
		<table class="elt">
			<tr><td>a</td></tr>
			<tr><td>b</td></tr>
			<tr><td>c</td></tr>
		</table>
		<table class="elt">
			<tr><td>a</td></tr>
			<tr><td>b</td></tr>
			<tr><td>c</td></tr>
		</table>
		<table class="elt">
			<tr><td>a</td></tr>
			<tr><td>b</td></tr>
			<tr><td>c</td></tr>
		</table>
		<table class="elt">
			<tr><td>a</td></tr>
			<tr><td>b</td></tr>
			<tr><td>c</td></tr>
		</table>
		<table class="elt">
			<tr><td>a</td></tr>
			<tr><td>b</td></tr>
			<tr><td>c</td></tr>
		</table>
		<table class="elt">
			<tr><td>a</td></tr>
			<tr><td>b</td></tr>
			<tr><td>c</td></tr>
		</table>
		
	</div>


mon css concerné :
#corps
{
	width: 800px;
	margin:auto;
	overflow-x: auto;
	overflow-y: hidden;
	height: 100px;
}
#corps .elt
{
	width: 300px;
	float: left;
	background: red;
	border: solid blue 1px;
	height: 80px;
}


Si quelqu'un avait une proposition de pourquoi ça ne fonctionne pas je suis peneur. Actuellement soit je mets mes .elt en float:left et il se mette sur une ligne mais quand ils devraient dépasser la longueur du div il retourne à la ligne. Soit quand j'enlève le float:left ils se mettent tous sur une seule colonne.


1 réponse

katsuo49 Messages postés 330 Date d'inscription vendredi 19 juin 2009 Statut Membre Dernière intervention 11 novembre 2014 25
8 févr. 2013 à 14:19
Je m'auto-réponds comme souvent... J'ai trouvé en fait il fallait juste que j'encapsule on contenu d'un niveau, limiter la taille du plus gros et augmenter la taille du second niveau.

<div id="corps"> <!-- width 500px par exemple -->
<div id="contenu"> <!-- width 1000px par exemple -->
<table>....
</div>
</div>
0