マージンを0 auto
に設定して、div
を中央揃えにしました。次に、左マージンを中央から50ピクセルだけインデントします。ただし、これを行おうとすると、div
がコンテナーの左側に揃えられ、中央揃えが失われます。 marginプロパティの左のフィールドをオーバーライドするためだと思います。誰かがこれを達成する方法を知っていますか?明確にするために、コンテナの中心から50ピクセル追加してインデントしたいと思います。
別のdivでラップします。外側のdiv margin: 0 auto;
と内側のdiv margin-left: 50px
<html>
<head>
<title>Test</title>
<style>
#outer {
margin: 0 auto; /*center*/
width:200px;
background-color:red; /*just to display the example*/
}
#inner {
/*move the whole container 50px to the left side*/
margin-left:-50px;
margin-right:50px;
/*or move the whole container 50px to the right side*/
/*
margin-left:50px;
margin-right:-50px;
*/
}
</style>
</head>
<body>
<div id="outer">
<div id="inner">
This is the result!
</div>
</div>
</body>
</html>
試す
padding-left: 50px;
それでも不十分な場合は、パディングを維持し、大きなdiv内に別のdivを追加します。
Divの周りに別のdivをラップします。次に、新しいdivを中央揃えにし、元のdivを左マージンまたはパディング左にします。