在列表标签​​之间放置DIV标签是否有效?

时间:2013-08-30 10:45:06

标签: html css

喜欢这个吗?

<li>Menu1</li><div></div>
<li>Menu2</li><div></div>

我这样做的原因是使用CSS设置div的样式以创建带渐变的分隔符。

4 个答案:

答案 0 :(得分:2)

不。您可以在此处查看:http://validator.w3.org/

可能能够使用CSS伪元素::after获得类似的结果,具体取决于您为<li>设置样式的方式。

E.g。

li {
    list-style: none;
    margin: 0;
    padding: 0;
    display: inline-block;
}

li::after {
    display: inline-block;
    content: "";
    width: 10px;
    height: 10px;
    background: #000;
}

根据需要应用渐变背景。

请注意,要支持IE8,您需要使用较旧的语法:after,而IE 7根本不支持此伪元素。

答案 1 :(得分:2)

不,这个HTML结构无效。

<ul>的允许内容为零个或多个<li>元素

参考: http://www.w3.org/TR/html-markup/ul.html#ul-content-model

答案 2 :(得分:1)

没有!请查看:http://validator.w3.org/

编辑验证此代码以确定它无效:

<!doctype html>
<html lang="en">

    <head>
        <meta charset="UTF-8">
        <title>Document</title>
    </head>

    <body>
        <ul>
            <li>Menu1</li>
            <div></div>
            <li>Menu2</li>
            <div></div>
        </ul>
    </body>

</html>

答案 3 :(得分:1)

你最好这样使用,

<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>

<body>
    <ul>
        <li>Menu1</li>
        <li><div></div></li>
        <li>Menu2</li>
        <div></div>
    </ul>
</body>