|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre régulier
![]() |
Bonjour,
j'ai un petit soucis de mise en page. J'aimerais avoir 2 colonnes, chacune en width:50% (avec un petit espace entre elles). Mais dans celle de gauche j'affiche un arbre, lorsque celui-ci devient trop large, je voudrais qu'une scrollbar apparaisse plutôt que d'élargir la colonne. Le mieux serait que la scrollbar apparaisse sur le conteneur de l'arbre (id="arbre_operations") et non sur la colonne (id="operations_list"). Le tout sans <table> si possible. Je sais que normalement overflow:auto nécessite des dimensions fixes, mais ya-t-il une autre solution ? J'ai implémenté un petit exemple : http://jsfiddle.net/PFALN/1/ Merci ! |
|
|
00
|
|
|
#2 |
|
Membre à l'essai
![]() Pauline Développeur Web Inscription : octobre 2010 Messages : 41 ![]() |
Bonjour Yann39,
Une solution à ton problème pourrait être de rajouter un max-width à ta div ainsi qu'un overflow:scroll. Je ne peux malheureusement pas tester ce que j'avance, mais jette y un coup d'oeil. EDIT : max-width & co ne passant pas sous IE7 & 8 (pour la 8 c'est moins sûr), tu devras par contre chercher un moyen d'"activer". Mais çà, c'est uniquement dans le cas où mon idée fonctionne .
|
|
00
|
|
|
#3 |
|
Membre régulier
![]() |
Merci pour ta réponse.
J'ai déjà un overflow:auto; car je ne veux pas de la scrollbar si pas besoin. Pour le min-width c'est toujours le même soucis je ne veux pas de largeur fixe, car en fait mes 2 colonnes qui sont en width:50%; n'auront pas toujours la même taille en fonction de la largeur de la page. |
|
|
00
|
|
|
#4 |
|
Membre à l'essai
![]() Pauline Développeur Web Inscription : octobre 2010 Messages : 41 ![]() |
Je t'ai proposé un max-width
Je vais essayer de mieux t'expliquer. En gros, tu laisse ton width:auto, mais tu spécifie que si la zone devient trop large, alors à ce moment là il faudra mettre une scroll bar. Ce que tu va faire en mettant en place un max-width. Par contre, tu va devoir trouver la valeur qui convienne le mieux manuellement. |
|
00
|
|
|
#5 |
|
Membre régulier
![]() |
Oui pardon je voulais écrire max-width
Je ne peux pas spécifier une valeur pour max-width, vu que la largeur du conteneur de l'arbre (id="arbre_operations") doit être fluide. En imaginant un écran de 10000 * 1080, ce conteneur serait super large, et il faudrait un contenu encore plus large pour déclencher l'overflow. |
|
|
00
|
|
|
#6 | |||
|
Membre à l'essai
![]() Pauline Développeur Web Inscription : octobre 2010 Messages : 41 ![]() |
Je viens de te faire un exemple visible à cette adresse :
http://www.paulineghiazza.fr/blog/ex...menu-overflow/ Je l'ai codé à la va vite mais ca te permettra de voir ce dont je te parle en image. Citation:
Code :
Pauline. |
|||
|
00
|
|
|
#7 |
|
Membre régulier
![]() |
Je suis désolé mais je ne comprend pas. Je crois au'on parle pas du même soucis
Regarde mon exemple jsfiddle : http://jsfiddle.net/PFALN/1/ et essai de modifier (run pour voir les modifs), tu verra. |
|
|
00
|
|
|
#8 | ||
|
Membre à l'essai
![]() Pauline Développeur Web Inscription : octobre 2010 Messages : 41 ![]() |
Rajoute ce code à #arbre_operations et dis moi si on se rapproche
Code :
|
||
|
00
|
|
|
#9 |
![]() ![]() Josselin Développeur Web Inscription : janvier 2004 Messages : 9 050 ![]() |
Et si tu enlevais ces fieldset ? Ca marcherait sûrement mieux. Surtout que dans ton exemple il n'y ont pas leur place.
|
|
|
00
|
|
|
#10 |
|
Membre régulier
![]() |
Non car là #arbre_operations prend 50% des 50% de #operations_list :/
|
|
|
00
|
|
|
#11 |
|
Membre régulier
![]() |
|
|
|
00
|
|
|
#12 |
![]() ![]() Josselin Développeur Web Inscription : janvier 2004 Messages : 9 050 ![]() |
Sémantiquement parlant, le fieldset sert à englober des éléments de formulaire d'une même catégorie. L'utiliser uniquement pour ses propriétés esthétiques est une erreur de structure HTML. Je te conseille donc de supprimer le fieldset et de positionner ton titre sur la bordure en CSS.
Et tout deviendra plus facile. |
|
|
00
|
|
|
#13 |
|
Membre régulier
![]() |
OK je vais regarder de ce côté mais je ne vois pas trop comment faire...
Je vous tiens au courant. Merci. |
|
|
00
|
|
|
#14 |
![]() ![]() Josselin Développeur Web Inscription : janvier 2004 Messages : 9 050 ![]() |
Tu peux t'inspirer de ça :
http://www.developpez.net/forums/d79...e-bordure-div/ |
|
|
00
|
|
|
#15 |
|
Membre régulier
![]() |
Merci.
J'ai simplement procédé comme ceci (avec un background-color sur les span): http://jsfiddle.net/PFALN/5/ Plus de problème d'overflow. Le soucis maintenant c'est que ça me semble difficile de mettre 2 <div> 50% côte à côte avec les margin padding ... |
|
|
00
|
|
|
#16 |
![]() ![]() Josselin Développeur Web Inscription : janvier 2004 Messages : 9 050 ![]() |
Ben il te suffisait dans le premier lien de remplacer tes fieldset par des div, tes legend par des titres positionnés correctement et les blocs restaient bien l'un à côté de l'autre.
|
|
|
10
|
|
|
#17 |
|
Membre régulier
![]() |
OK j'arrive enfin à ce que je voulais : http://jsfiddle.net/PFALN/6/
Grand merci à toi Bisûnûrs, et merci aussi Pauloscorps. Reste plus qu'à tester ça sous quelques navigateurs. à+. |
|
|
00
|
|
|
#18 |
|
Membre régulier
![]() |
Bon ben sous IE (8) ça ne passe pas
Aucun soucis sous Chrome & FF. |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com