Attribuez au canevas les propriétés de style css suivantes:
canvas {
padding-left: 0;
padding-right: 0;
margin-left: auto;
margin-right: auto;
display: block;
width: 800px;
}
Éditer
Étant donné que cette réponse est très populaire, permettez-moi d'ajouter un peu plus de détails.
Les propriétés ci-dessus centreront horizontalement le canevas, le div ou tout autre nœud que vous avez par rapport à son parent. Il n'est pas nécessaire de modifier les marges et les rembourrages supérieurs ou inférieurs. Vous spécifiez une largeur et laissez le navigateur remplir l'espace restant avec les marges automatiques.
Cependant, si vous voulez taper moins, vous pouvez utiliser les propriétés de raccourci css que vous souhaitez, telles que
canvas {
padding: 0;
margin: auto;
display: block;
width: 800px;
}
Centrer la toile verticalement nécessite cependant une approche différente. Vous devez utiliser un positionnement absolu et spécifier à la fois la largeur et la hauteur. Définissez ensuite les propriétés gauche, droite, haut et bas sur 0 et laissez le navigateur remplir l'espace restant avec les marges automatiques.
canvas {
padding: 0;
margin: auto;
display: block;
width: 800px;
height: 600px;
position: absolute;
top: 0;
bottom: 0;
left: 0;
right: 0;
}
Le canevas se centre lui-même en fonction du premier élément parent position
défini sur relative
ou absolute
, ou du corps si aucun n'est trouvé.
Une autre approche serait d'utiliser display: flex
, qui est disponible dans IE11
Assurez-vous également d'utiliser un doctype récent tel que xhtml ou html 5.