残念ながら私の知る限りではありません。「根本的に異なる」ものが必要かどうかはわかりません。マークアップをわずかに変更する必要がありますが、求めていることを正確に実行することは完全に可能です。コンテキストについてもう少し知らずに解決策を提供することは困難です。
たとえば、 のコンテンツをdiv
中央揃えにしたい場合は、 をお勧めしtext-align:center;
ます。中央の要素に背景が必要な場合は、別のdiv
/ span
etc を内部にネストします。本当に行き詰まっている場合は、目的が何であるかをもう少し説明してください。解決策を考え出す手助けをします. これに基づくソリューションは次のとおりです。
HTML
<div id="container" class="cf">
<div id="sidebar"></div>
<div id="message">
<span>hello world</span>
</div>
</div>
...Content after
CSS
.cf:before,
.cf:after {
content: " ";
display: table;
}
.cf:after {
clear: both;
}
#sidebar {
width:200px;
height:400px;
background-color:red;
float:left;
}
#message {
display:block;
text-align:center;
}
#message > span {
padding:10px;
background:blue;
display:inline-block;
color:white;
}
ここでは、 のみをフロートし#sidebar
ます。次に、#message
div が を受け取り、display:block
を使用してtext-align:center
、ネストされたスパンを中央揃えにします。あとでフロートをクリアする必要があるため、私は micro clearfix ハック.cf
も使用していることに気付くでしょう。
編集:スパンを に変更しinline-block
、パディングを追加して、それが機能していることを示しました。