2013-08-09 16 views
7

親の相対的な親の中に絶対的に配置されたテキストを配置するにはどうすればよいですか?私はtext-align:centerを親要素に使用しようとしていますが、要素自体ではなく、常に子の左隅を中心にしています。CSS:相対的な親の内側に絶対配置されたテキストを配置する

http://jsfiddle.net/sucTG/2/

+0

なぜあなたは 'ポジション必要です:絶対;'あなたの.textクラスCSSでの?私はその行を削除しようとしましたが、テキストは正しく中央揃えされています。 – amaurymartiny

+0

ブロック内に相対的な要素があるため、テキストの位置付けに影響を与えず、その上に表示するだけでよいからです。 – vlad

+0

他のものの上に何かを置くには、必ずしも絶対的なものではなく、位置決めが必要です。 – melancia

答えて

18

事がposition:absolute;がその内容に合わせて、要素の幅を変更することで、素子ブロックの幅内でそのtext-align: center;センターテキスト。したがって、position: absolute;を追加すると、要素の幅を増やすことを忘れないでください。そうしないと、text-align: center;プロパティは役に立たなくなります。

これを解決する最善の方法は、.textセクションにwidth: 100%;left: 0px;を追加することです。

http://jsfiddle.net/27van/

0

アップデート:私は前に置くことだった悪い/

間違っ

http://jsfiddle.net/brJky/1/

これは、あなたが望むものに非常に近いすべきですか?

テキストは相対的なもので、コンテナ内の他の要素は絶対的です。

.text { 
    color:#fff; 
    padding:50px 0; 
    display:block; 
    position:relative; 
} 

.absolute { 
    background:#f0f; 
    height:25px; width:25px; 
    position:absolute; 
    top:36px; left:50%; 
} 
関連する問題