2012-04-24 72 views
0

divの中央にテキストを縦に並べて表示できないようです。先頭に浮いています。ここに私のコードは次のとおりです。 CSSdivの中にテキストを垂直に配置しますか?

.dialer{ 
background-image: url('http://v4m.mobi/php/fb/images/close.png'); 
background-repeat: none; 
width: 100; 
height: 40; 
margin: 0 auto; 
-moz-box-shadow: 0 12px 8px -8px rgba(0,0,0,0.7); 
-webkit-box-shadow: 0 12px 8px -8px rgba(0,0,0,0.7); 
box-shadow: 0 12px 8px -8px rgba(0,0,0,0.7); 
text-align: center; 
}  

HTML

<div class="dialer" align="center"><a href="http://v4m.mobi/php/fb/index.php" 
style="color: #ffffff; font-size: 18px; font-weight: bold; text-decoration: none; 
margin-top: 20px;">Close App</a></div> 

任意の提案ですか?

あなたは

+0

あなたは '持って試してみてください幅:100; 身長:40;あなたはここにいくつかのユニットが必要です。 px、em、%など – Kyle

+0

[cssを使用してテキストを垂直に配置するにはどうすればよいですか](http://stackoverflow.com/questions/8714371/how-do-i-center-text-vertically-with-css)その他多数。 –

+0

divの[cssとdivの垂直方向の中心を揃える方法は?](http://stackoverflow.com/questions/8865458/how-to-align-text-vertically-center-in-div-with-css) – user

答えて

1

.dialervertical-align: middle;を追加ありがとうございます。

また、高さと幅の値を固定しているので、margin: auto auto;とすることもできます。ただし、値の型を指定する必要があります(px%など)。

また、このような相対的な位置決めを行うことができます:タグから:「20ピクセルのマージントップ」、その後のようなものを使用します。

.dialer { 
    ... 
    position: relative; 
    top: 47%; 
} 
+0

これは、CSSでの唯一のクロスブラウザマルチラインソリューションです。 –

+0

あなたの答えをありがとう、上記のすべてを試してみましたが、うまくいきません。他の提案はありますか? – DextrousDave

1

は削除

.dialer { 
    ... 
    height: 40px; 
} 

.dialer a { 
    line-height: 40px; 
} 

...これは、テキストが1行に収まることがわかっている場合にのみ機能します。

+0

ありがとうございます。これはうまくいった。しかし、それはw3schools.comにはない非公式の修正のようです...なぜ垂直整列のような他の修正はありません:中間作業ですか?私は幅と高さに 'px'を追加して縦線を追加しました:中、幸運はありません – DextrousDave

0

ここでは動作しているフィドルです:http://jsfiddle.net/PvVr6/4/ フィリピンを更新して複数行のコンテンツでも動作するようにしました。

.dialer{ 
     ... 
     width: 100px; 
     height: 40px; 
     ... 
     vertical-align: middle; 
    } 

    .dialer a { 
     display: inline-block; 
    } 
+0

しかし、それはmalty内の内容では機能しません –

+0

更新を確認してください:display:inline-block;ラインの高さの代わりに – ThdK

+0

あなたの答えをありがとう。それを試して、私のために働いていません... JSfiddleで見ることができるように、それはdivの下部にテキストをスローします。 – DextrousDave

関連する問題