html在每个表行旁边放置一个链接

时间:2013-03-13 08:51:15

标签: html css

我有一个表,每行包含三列,我希望每行添加一个链接。

<table>
    <th>
        Name:
    </th>
    <th>
        Price:
    </th>
    <th>
        Description
    </th>

    <?php while ($row = $foods->fetch()) { ?>
        <tr>
            <td>
                <?php echo $row['Name']; ?>
            </td>
            <td>
                <?php echo $row['foodPrice']; ?>
            </td>
            <td>
                <?php echo $row['foodDescription']; ?>
            </td>
        <a class="editLink">roma</a>
        </tr>
    <?php } ?>
</table>

我尝试在最后a之后添加链接td,但该链接位于表格的顶部, 提前谢谢

3 个答案:

答案 0 :(得分:1)

您需要添加表格单元格以包含该链接。此外,th标记应该包含tr标记。

<table>
    <tr>
        <th>
            Name:
        </th>
        <th>
            Price:
        </th>
        <th>
            Description
        </th>
        <th>
        </th>
    </tr>

    <?php while ($row = $foods->fetch()) { ?>
        <tr>
            <td>
                <?php echo $row['Name']; ?>
            </td>
            <td>
                <?php echo $row['foodPrice']; ?>
            </td>
            <td>
                <?php echo $row['foodDescription']; ?>
            </td>
            <td class="link"><!-- Your missing this -->
                <a class="editLink">roma</a>
            </td><!-- and this -->
        </tr>
    <?php } ?>
</table>

要将链接单元格设置为与其他单元格不同,您需要使用CSS。将link的CSS类添加到包含td标记的a。然后按如下方式定义样式:

<强> CSS

table{
    text-align: center;
}

td{
    width: 200px;
}

td.link{
    width: 50px;
}

工作示例: http://jsfiddle.net/y9C3G/

答案 1 :(得分:1)

<a>内直接使用<tr>标记是无效的。通过将链接放在其自己的单元格中,将另一列添加到表中。您可能还想在第一行添加另一个<th>,或者在描述一个中添加colspan="2"属性。

此外,要求表格包含<tbody>元素,我建议您将<th>放入<thead>

<table>
  <thead>
    ...
  </thead>
  <tbody>
    ...
  </tbody>
</table>

答案 2 :(得分:1)

<tr>
    <td>Your Content</td>
    <td>Your Content</td>
    <td>Your Content</td>
    <td class="myLinkClass"><a href=""></a></td>
</tr>

<style>
    .myLinkClass {
        width: 100px; /* This will give width for only the td with this class */ 
    }
</style>