无法在表格单元格中垂直居中文本
问题描述:
我正在使用HTML和CSS为学校项目创建网站。在标题中有一个表格,我需要一个文本(位于单元格内)在垂直中心和水平右侧对齐。无法在表格单元格中垂直居中文本
这是HTML代码
<table id="intestazione">
........
<tr>
<td class="centerV"><h1>Text</h1></td>
<td><img src="Logo.jpg"></td>
</tr>
</table>
,这是CSS代码
h1
{
font-family:Arial;
font-size:50px;
color:#009ED9;
text-align:right;
}
.centerV
{
display:table-cell;
vertical-align:middle;
}
但我想这是行不通的,所以我改变CSS代码插入到
h1
{
font-family:Arial;
font-size:50px;
color:#009ED9;
display:table-cell;
vertical-align:middle;
text-align:right;
}
并且文本垂直居中,但不在右侧(它位于左侧)。我读过,我可以在顶部使用line-height
或padding
,但在我看来,使用vertical-align
(告诉我是否我错了)会更干净优雅。
我也尝试了其他代码从网络上的建议,但我不写,否则问题会太长。
答
你可以使用: 位置:亲属; right:value%; (或左:值%) 只要你喜欢..
<table id="intestazione" border="1">
<tr>
<td class="centerV"><h1>Text</h1></td>
<td><img src="http://www.sec4ever.com/home/images/misc/noavatar.gif"></td>
</tr>
h1{
font-family:Arial;
font-size:50px;
color:#009ED9;
display:table-cell;
padding:100px;
vertical-align:middle;
position:relative;
right:30%; }
答
从h1
标题中取出display:table-cell
标题,并简单地将text-align:right
应用于您的td元素。
h1 {
font-family: Arial;
font-size: 50px;
color: #009ED9;
text-align: right;
}
.centerV {
vertical-align: middle;
}
tr {
border: solid red;
}
td {
border: solid green;
width: 100%;
}
h1 {
font-family: Arial;
font-size: 50px;
color: #009ED9;
vertical-align: middle;
text-align: right;
}
h1 {
border: solid red;
}
table {
text-align: right;
}
<table id="intestazione">
........
<tr>
<td class="centerV">
<h1>Text</h1>
</td>
<td><img src="Logo.jpg"></td>
</tr>
</table>
答
试试这个
h1 {
font-family:Arial;
font-size:50px;
color:#085ED9;
display:table-cell;
vertical-align:middle;
float: right;
}
答
您可以通过默认内容td
使用align="right"
在td
垂直对齐。
<table id="intestazione" width="100%" bgcolor="green">
<tr>
<td align="right" valign="middle" ><h1>Text</h1></td>
<td><img src="Logo.jpg"></td>
</tr>
</table>
+0
我也试过这个,但它没有'吨工作...感谢无论如何:) – mara6399
你要水平对齐的权利?因为你提到“正确”和“左”。垂直交易“顶”,“buttom”,“中” – repzero
@repzero我需要一个水平对齐的“中间” – mara6399
@ mara6399答案发布 – repzero