有没有办法在HTML5中创建自己的html标记?

前端之家收集整理的这篇文章主要介绍了有没有办法在HTML5中创建自己的html标记?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想创造一些东西
<menu>
    <lunch>
        <dish>aaa</dish>
        <dish>bbb</dish>
    </lunch>
    <dinner>
        <dish>ccc</dish>
    </dinner>
</menu>

可以在HTML5中完成吗?
我知道我可以做到

<ul id="menu">
    <li>
        <ul id="lunch">
            <li class="dish">aaa</li>
            <li class="dish">bbb</li>
        </ul>
    </li>
    <li>
        <ul id="dinner">
            <li class="dish">ccc</li>
        </ul>
    </li>    
</ul>

但它是这么少可读性:

解决方法

您可以在浏览器中使用自定义标记,虽然它们不是HTML5(请参阅 Are custom elements valid HTML5?the HTML5 spec)。

让我们假设您要使用名为< stack>的自定义标记元素。这里是你应该做的…

步骤1

在CSS样式表中规范化其属性(think css reset) –
例:

stack{display:block;margin:0;padding:0;border:0; ... }

第2步

通过将此脚本附加到头部,使其在旧版本的Internet Explorer中工作(重要!):

<!--[if lt IE 9]> 
 <script> document.createElement("stack"); </script>
 <![endif]-->

然后可以自由使用您的自定义标签

<stack>Overflow</stack>

随意设置属性

<stack id="st2" class="nice"> hello </stack>

猜你在找的HTML5相关文章