Alignement vertical ET horizontal
Je débute en html et css depuis un bon moment, et j'aimerai savoir comment aligner verticalement ET horizontalement un bloc dans une page.
Merci d'avance ! ;)
22 réponses
Le fil porte sur l’alignement simultané vertical et horizontal d’un bloc dans une page HTML/CSS, une question centrale pour les débutants souhaitant maîtriser le centering sur iPhone/Safari. Several réponses proposent des techniques variées, notamment vertical-align: middle pour l’alignement, ou bien position: absolute avec left: 50% et top: 50% accompagnés de marges négatives, tout comme l’usage de padding pour ajuster l’espace. Certains évoquent des démonstrations et des outils de développement, ainsi que des exemples concrets comme le cadre centré par décalages, mais l’adaptation reste sensible selon le contexte et le navigateur utilisé. En cas d’objectif précis, préciser le type de bloc et l’environnement, car les solutions autorisant le centrage différeront entre une mise en page fluide et une structure fixe.
-
J'avais aussi constaté que le rendu n'etait pas terrible.... Donc en gros je dois installer un outil de développement ? :) y'en a t'il pour Safari ?
-
Ré-bonjour ;)
J'ai voulus tester une solution plus simple pour aligner horizontalement et verticalement:
.test { position: absolute; Top: 50%; Left: 50%; }
Mais cela n'aligne pas correctement: pourquoi ?
Merci ! :)-
-
-
ModérateurEt bien il va vite falloir changer de manière de travailler. ;-p
Dreamweaver peu être pratique, mais ne te fi jamais au rendu afficher. Toujours tester le rendu de ses pages dans plusieurs navigateurs (firefox, safari, chrome, opera, IE7 à 9).
Et perso, si tu veut vraiment apprendre, je conseillerait plus un éditeur de texte avancer comme notepade++
Et utiliser des outils de développements pour s'aider à comprendre comment tes pages sont organiser. L'outil de développement inclue dans chrome est vraiment bien fichue, même si celui de firefox et firebug sont pas mal non plus.
-
-
Excuser moi et merci quand meme ;)
-
ModérateurPas de soucis, il faut bien apprendre la charte du forum à un moment ou à un autre quand on est nouveau. :-)
Sinon, en bons sites à bookmarker pour apprendre à développer un site :
https://www.alsacreations.com/
https://www.w3schools.com/
https://openclassrooms.com/fr/
https://web.developpez.com/
Et pas de secret, pour progresser, il faut pratiquer et lire de la doc sur le sujet. ;-)
-
-
Personne ? :/
-
ModérateurSalut
Premièrement, il serait cool de ne pas relancer ta demande toute les 20 minutes, une relance est permise par tranche de 24h sans réponse. ;-)
Ensuite, on ne va pas t'apprendre tout le CSS ici, il faut essayer, tester, se planter, réessayer, prendre des notes, etc.
Tu peut aussi t'aider d'internet, avec des tutoriels, des sites références et des exemples de codes.
Souvent, une recherche google permet de répondre à une question ou un problème dans le projet.
-
-
cela marche, mais c'est quand même bizarre, car ce n'est pas centrer parfaitement verticalement ! :(
Et juste, pourriez vous m'expliquez à quoi sert ce que vous m'avez dis ? car je ne comprend pas certaines choses... :) -
chez moi ca marche bien
par contre j'ai inversé, c'est ca qu'il faut mettre :
.cadre
{
position: absolute;
left : 50%;
top : 50%;
border : 1px solid #666;
width : 400px;
margin-top : -150px;
margin-left: -200px;
padding: 35px 0;
} -
cela me fait un grand espace entre le bas du cadre et le texte !
-
exemple
remplacer
.cadre
{
position: absolute;
left : 50%;
top : 50%;
border : 1px solid #666;
width : 400px;
margin-top : -150px;
margin-left: -200px;
padding: 35px 0;
}
PAR
.cadre
{
position: absolute;
left : 50%;
top : 50%;
border : 1px solid #666;
width : 400px;
height : 300px;
margin-top : -150px;
margin-left: -200px;
vertical-align: middle;
padding: 20px 0;
} -
je n'est pas bien compris ce que tu veux dire par "augment le 20px de cette ligne si besoin" !
-
enlève ton height : 300px;
et augment le 20px de cette ligne si besoin
padding: 20px 0; -
oui !
HTML:
<!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <link rel="stylesheet" href="style.css" /> <title>Document sans nom</title> <a name="h"></a> </head> <center> <body> <span class="cadre"> <span class="b1"> <a href="#b"><img src="b1.jpg" height="65"></a> </span> <p> <span class="txt"> Site créé par Noé ! </span> </p> <p><span class="b2"> <a href="#h"><img src="b2.jpg" height="65"></a> </span></p> </span> </body> </center> <footer> <a name="b"></a> </footer> </html>
CSS:
@charset "UTF-8"; /* CSS Document */ .cadre { position: absolute; left : 50%; top : 50%; border : 1px solid #666; width : 400px; height : 300px; margin-top : -150px; margin-left: -200px; vertical-align: middle; padding: 20px 0; } .b1, .b2 { display: block; text-align: center; margin: auto; } body { background-color: #999; } * { font-family: "Palatino Linotype", "Book Antiqua", Palatino, serif; } -
tu peux copier / coller ton code HTML ET CSS stp ?
-
je ne sais pas pourquoi, mais sa ne marche toujours pas :(
-
excuser moi, je voulais dire centrer verticalement ;)
-
ajoute un :
text-align:center; -
Et encore une dernière question, j'aimerai centrer le contenu de mon bloc, mais je n'y arrive pas. Comment faire ?
-
Dans les 2 lignes qu'a citer tryan
left : 50%; // sert à aligner horizontalement
top : 50%; // sert à aligner verticalement
à toi de saisir une des 2 lignes -
excellent, merci !
mais sauriez vous aussi comment aligner seulement horizontalement, ou seulement verticalement, car j'ai encore un peut de mal !
Merci ! ;) -
je rejoins tyran
mais ne pas oublié le
position:absolute; -
#cadre{ position:absolute; left : 50%; top : 50%; border : 1px solid #aaa; width : 400px; height : 300px; margin-top : -150px; margin-left: -200px; }
Regardez ce lien http://creer-un-site.fr et visualisez la démo.
Une question stupide engendre une réponse stupide!
Une question mal formulé engendre une réponse aléatoire!
- 1
- 2