CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

[HTML/CSS] Alignement vertical ?

le-chocolat
le-chocolat
Niveau 9
12 mars 2012 à 12:03:21

Salut je bloque sur le plus simple dans mon site web.. :rouge:
le placement de mes <div>

alors j'ai 3 div comme ceci :

<body>

<div 1></div>
<div 2></div>
<div 3></div>

</body>

le but est de les centrer en hauteur tout le temps,
de mettre le div1 a gauche et les div2 et 3 a droite..

comme une image est toujours plus parlant que du texte
http://s4.noelshack.com/uploads/images/6399710294967_div.jpg

j'ai tenté plusieurs chose sans réel succès, donc je me tourne vers vous :svp:

vava740
vava740
Niveau 10
12 mars 2012 à 12:48:37

Salut :)

J'espères déjà que tu as pas mis de <div 1> dans ton code :hap: et que c'étai tque pour l'explication, hein ?

Sinon y'a pas moyen d'aligner verticalement un élément en CSS... du moins pas sur des blocs.

Tu peux par contre faire un système en JavaScript, qui modifie le top de ton élément en position: absolute ou fixed, en fonction de la hauteur de la fenêtre, et redéfinir cet attribut au chargement de la page et au redimentionement de la fenêtre.

Petit exemple : http://wall.deblan.fr/x213f/javascript/

Dans ce cas là tu passes en paramètre à la fonction l'élément que tu veux centrer, en récupérant ton div avec son id par exemple. :oui:

le-chocolat
le-chocolat
Niveau 9
12 mars 2012 à 17:02:34

Oui je me suis finalement tourné vers une solution javascript,
et évidement les div 1 2 3 c’était pour rester clair dans mon exemple :)

Onigawara
Onigawara
Niveau 3
12 mars 2012 à 19:11:05

Non ! Pas de javascript pour si peu. Certain le désactive dans leur navigateur.

Il faut donner un aspect de tableau grâce au CSS et c'est rangé.

html :

<div id="bloc">
<div id="table">
<div id="contenu">
Ton blabla.
</div>
</div>
</div>

le CSS :

  • {margin: 0; padding: 0;}

html,body{height: 100%; width: 100%;}
body {text-align: center; min-height: 468px; min-width: 552px;}

  1. bloc {height: 100%; width: 100%; display: table; vertical-align: middle;}
  1. table {position: relative; vertical-align: middle; display: table-cell; height: 468px;}
  1. contenu {width: 552px; height: 468px; text-align: center;

margin-left: auto; margin-right: auto;}

Normalement ça fonctionne :)

vava740
vava740
Niveau 10
12 mars 2012 à 19:28:33

@Onigawara : si je copie direct ton code, sans rien toucher, enfin juste en mettant le css dans une balise <style>, ça marche pas, enfin c'est décalé mais pas complètement centré... :-(

Parce que une solution sans JavaScript ça m'intéresse aussi, mais j'ai pas tout compris là :hap:

Onigawara
Onigawara
Niveau 3
12 mars 2012 à 19:44:21

Pourtant ça fonctionne chez moi : http://img15.hostingpics.net/pics/118708centrverticalement.jpg

Essaye de mettre

  1. contenu {width: 552px; height: 468px; text-align: center;

margin-left: auto; margin-right: auto; border: 1px solid #03C;}

(le border pour voir la div centrée verticalement) et tu auras le même résultat que sur le screen.

vava740
vava740
Niveau 10
12 mars 2012 à 21:37:33

Ah oui, en effet ! :bave:

Magnifique !

Onigawara
Onigawara
Niveau 3
12 mars 2012 à 21:49:48

Quelques trucs à savoir ;) J'évite le JS au maximum.

le-chocolat
le-chocolat
Niveau 9
13 mars 2012 à 14:07:14

pas mal comme solution aussi et sans JS,
je garde sous le coude merci

Sous forums
  • Aide à l'achat Mac
  • Création de Jeux
  • Linux
  • Création de sites web
  • Programmation
  • Internet
  • Steam Deck
  • Macintosh
  • Hardware
La vidéo du moment