2017-04-11 8 views
0

tdのデフォルトのCSSは何ですか?自動的に材料が垂直にセンタリングされるようにしますか?自動的にセンタリングするtdのデフォルトのCSS

私はdivが親よりもmargin: 0 autoであることを考慮して、水平に中心を置く方法を知っていますが、自動的に垂直に中心を合わせることができるのは何ですか?ユーザーエージェントスタイルシートすなわちデフォルトのブラウザのスタイルシートでTD & TRため

#outer { 
 
    width: 200px; 
 
    height: 200px; 
 
    background-color: yellow; 
 
} 
 

 
#inner { 
 
    width: 60%; 
 
    margin: auto; 
 
    background-color: red; 
 
}
<div id="outer"> 
 
    <div id="inner"> 
 
    centered only horizontally 
 
    </div> 
 
</div> 
 

 
<table height=200 border=1> 
 
    <tr> 
 
    <td> 
 
     I center automatically 
 
    </td> 
 
    </tr> 
 
</table>

答えて

1

ような何かを行うことができ、デフォルトのスタイルシートを上書きする

vertical-align: middle; 

。このプロパティはvertical-alignも受け入れます。

td { 
 
    vertical-align: middle; 
 
} 
 

 
.outer { 
 
    display: table-cell; 
 
    vertical-align: middle; 
 
    width: 400px; 
 
    height: 200px; 
 
    border: 1px solid black; 
 
} 
 

 
.inner { 
 
    width: 60%; 
 
    margin: 0 auto; 
 
    background-color: yellow; 
 
    text-align: center; 
 
}
<table height="200" border="1"> 
 
    <tr> 
 
    <td>I am vertically centered</td> 
 
    </tr> 
 
</table> 
 

 
<div class="outer"> 
 
    <div class="inner"> 
 
    This is vertically centered 
 
    </div> 
 
</div>

+0

これを示すスニペットを作ってください。 –

+0

私の投稿を編集します。または、以前のCSSがルールを上書きすることがあります。それはよい習慣ではありませんが、 '' vertical-align'の '' middle'の後に '!important'ルールを追加しようとするかもしれません。したがって、それは次のようになります: 'vertical-align:middle!important;' – Haqqi

+0

私の例のように別のdiv内のdivでそれを行うことはできますか?デフォルトでは、垂直方向に中央に配置されているので、tdでそれを行うのは無意味です。 –

1
vertical-align: inherited; 

。そこで、TDは、以下のようなTBODYの垂直方向のアラインメントを参照しています。 、あなたはtd要素のデフォルトCSSがdisplay: table-cellある

td{ 
vertical-align: top !important ; 
} 
+0

は、あなたがこれを証明するスニペットを作るでした:

だから、あなたは、CSSを設定する必要があるかもしれませんか?垂直方向のアライメントを適用しようとしましたが、何も変更されませんでした。私はvertical-alignが 'line-height'と組み合わせて使用​​されていることを確信しています –

0
#outer{display:table-cell;} 
#inner{vertical-align:middle;} 
関連する問題