jinja2 for 循环,生成的元素位置不对,求教

VishKozus
  • 151

代码:

<div class="row">
    <div class="col-lg-12">
        <div class="page-header">
            <h3>最新固件 - 热门机型</h3>
        </div>
        <table class="table table-hover">
            <thead>
            <tr>
                <th>型号</th>
                <th>地区</th>
                <th>安卓版本</th>
                <th>创建时间</th>
                <th>PDA版本</th>
            </tr>
            </thead>
            <tbody>
            {% for i in importent_new %}
                <a href="{{ i.model_name }}">
                    <tr>
                        <td>{{ i.model_name }}</td>
                        <td>{{ i.firmware_country_carrier }}</td>
                        <td>{{ i.firmware_android_version }}</td>
                        <td>{{ i.firmware_build_timestamp }}</td>
                        <td>{{ i.firmware_pda }}</td>
                    </tr>
                </a>
            {% endfor %}
            </tbody>
        </table>
    </div>
</div>

生成出来的结果

图片描述

A标签出现在了错误的地方。不知道是我使用的方法有误,还是jinja2有bug?

回复
阅读 4.1k
3 个回答
<tr><td><a href="">text</a></td><td><a href="">text</a></td></tr>
table tr td a {
    display:block;
    height:100%;
    width:100%;
}
manxisuo
  • 10.8k

这跟jinja2没有任何关系。
是你写的HTML不规范造成的,因为table标签里不能直接放a标签。浏览器渲染出来后就是你截图的样子。

你应该把链接放到td标签里面。
看你的代码你是想把链接显示成一行吧?如果是的话,你只需要在td上加一个colspan属性就可以了。

自己查看源代码看生成的结果,你截图的并不是生成结果。

宣传栏