表格单元格内容:在左上角对齐文本,在HTML中间对齐图像

时间:2015-07-30 08:59:38

标签: html css alignment vertical-alignment text-alignment

我有一个html表。 该表的内容是文本和图像。我会将左上角的文本与中间的图像对齐(垂直对齐)。 我试着用这种方式:

CSS:

table td {border-collapse: collapse;}
#tabella {border: 1px solid black; text-align: left; vertical-align: top;}
#variante {vertical-align: middle;}

HTML:

<td id="tabella" style="padding:6px 8px; border-left: 1px solid #eeeeee;">text
<br>
<img id="variante" width="75" border="0" src="www.favetta.com/image.png">
</td>

但是通过这种方式,我获得了在单元格左上角对齐的所有(文本和图像)。 有什么建议吗?

3 个答案:

答案 0 :(得分:2)

你是否正在为电子邮件这样做?如果这样内联样式很好(尽管在所有电子邮件客户端中都可以使用,所以有默认设置。

如果电子邮件做类似......

<table>
    <tr>
        <td align="center">
             <table width="100%">
                  <tr>
                        <td align="left">This is text</td>
                  </tr>
             </table>
             <br/><br/>
             <img src="http://s27.postimg.org/fs9k8zewj/cow1.png">
             <br/><br/><br/><br/>
        </td>
    </tr>    
<table>

看起来粗糙,但有些浏览器和电子邮件客户端会忽略&#39; height =&#39;。这纯粹是我从多年的电子邮件模板中发现的。

如果不是电子邮件,请尝试避免使用表格 - 但如果您不能尝试,请尝试使用...

<table>
    <tr>
        <td class="content">
            This is text
            <img src="http://s27.postimg.org/fs9k8zewj/cow1.png">
        </td>
    </tr>    
<table>

CSS

table{
    border:1px solid grey;
    width:100%;
}
.content{
    text-align:left;
}
.content img{
    width:75px;
    vertical-align:middle;
    transform: translate(-50%, -50%);
    margin: 100px 50% 50px 50%; 
}

https://jsfiddle.net/qbss1f0t/

答案 1 :(得分:0)

这是一个简单的例子:

table{
    border:1px solid #000;    
}

table tr{
    height:200px;
}

table td{
    width:200px;
    text-align:center;
}

.textNode{
    text-align:left;
    padding:0;
    margin:0;
    vertical-align:top;
}

.imgNode img{
    width:75px;    
    margin: auto;
}
<table>
    <tr>
        <td class="textNode">This is text</td>
        <td class="imgNode"><img src="http://s27.postimg.org/fs9k8zewj/cow1.png"></td>
    </tr>    
<table>

Here是一个小提琴

这可以让你到达你想要的地方。

旁注:内联样式不是一个好习惯。

答案 2 :(得分:0)

Use this may help you   

<table width="100%">
        <tr>
        <td id="tabella" style="padding:6px 8px; border-left: 1px solid #eeeeee;">text</td>
        <td><img id="variante" width="75" border="0" src="www.favetta.com/image.png"></td>

        </tr>    
    <table>