当前位置: 首页 > 面试题库 >

自定义标签…为什么不呢?

印高阳
2023-03-14
问题内容

我找到了一个网站,该网站提供了将自定义标签添加到html的指南,就像人们制作新的HTML5标签一样。我必须承认,我认为添加我自己的标签,“扫描”代码并查找所需内容会更好。但是我发现的每个网站,人们都说这不好。…但是为什么不好呢?

带有类的示例html:

<ul class="commentlist">
    <li class="comment odd">
    <div class="1">
        <div class="avatar">
            <img src="http://placehold.it/60x60" width="60" height="60" />
        </div>
        <div class="metadata">
            <div class="name">Name</div>
            <p>response1</p>
        </div>
    </div>
    <ul class="children">
        <li class="comment even">
            <div class="2">
                <div class="avatar">
                    <img src="http://placehold.it/60x60" width="60" height="60" />
                </div>
                <div class="metadata">
                    <div class="name">Name</div>
                    <p>response1a</p>
                </div>
            </div>
        </li>
        <li class="comment odd">
            <div class="3">
                <div class="avatar">
                    <img src="http://placehold.it/60x60" width="60" height="60" />
                </div>
                <div class="metadata">
                    <div class="name">Name</div>
                    <p>response1b</p>
                </div>
            </div>
        </li>
    </ul>
</li>

在这里,我可以使用自定义标签进行操作,我认为这很容易找到解决方法,所以为什么不这样做:

<clist>
<ccommentbox class="odd">
    <ccomment class="1">
        <cavatar>
            <img src="http://placehold.it/60x60" width="60" height="60" />
        </cavatar>
        <cdata>
            <cname>Name</cname>
            <ctext>response1</ctext>
        </cdata>
    </ccomment>
    <cchildren>
        <ccommentbox class="even">
            <ccomment class="2">
                <cavatar>
                    <img src="http://placehold.it/60x60" width="60" height="60" />
                </cavatar>
                <cdata>
                    <cname>Name</cname>
                    <ctext>response1a</ctext>
                </cdata>
            </ccomment>
        </ccommentbox>
        <ccommentbox class="odd">
            <ccomment class="3">
                <cavatar>
                    <img src="http://placehold.it/60x60" width="60" height="60" />
                </cavatar>
                <cdata>
                    <cname>Name</cname>
                    <ctext>response1b</ctext>
                </cdata>
            </ccomment>
        </ccommentbox>
    </cchildren>
</ccommentbox>

问题答案:

自定义标签不是邪恶的

请考虑一下:

  • 默认情况下,它们不会在IE 6-8中被识别->您必须使用JavaScript来介绍您在页面上使用的每个自定义标签,例如:document.createElement('custom-tag')这意味着 您的网站只有在打开JavaScript的情况下才能正确呈现
  • 在大多数浏览器中,您的自定义标记将被视为内联元素,例如<span>,这意味着您必须编写CSS才能将其声明为custom-tag { display: block }
  • 我发现没有资源可以证明自定义标签对搜索引擎有任何负面影响。实际上,谷歌发布了Angular.js,它在 首页的 示例中推广了自定义标签(<pane><tab>)。
  • 大多数HTML编辑器会将您的自定义标签标记为无效的HTML,因为它们不在官方规范中。

总结一下:

  • 当重要元素的意义大于<div>没有现有HTML 4/5等效项 时,请使用自定义标签。对于Web应用程序来说尤其如此,因为Web应用程序解析DOM以获得特殊的标签/属性/类以创建组件(例如Angular.js)。
  • 如果您构建的只是一个具有常规内容的 简单网站,请 使用标准HTML。您将希望您的网站在不启用JavaScript的情况下也能正常工作。
  • 如果您构建的 Web应用程序 中的自定义标签确实可以帮助使源代码更整洁并表达特殊的语义,请使用它们。上面提到的所有负面影响(必须打开JavaScript / CSS声明)在这些情况下都无关紧要。相同的规则适用于自定义属性。


 类似资料:
  • 问题内容: 我正在构建一个实现HTML5音频标签的音乐播放器Web应用程序,但是希望它在所有浏览器中看起来都一样-是否可以定义我自己的自定义CSS?如何? 问题答案: 当前尚无使用CSS设置HTML5 播放器样式的方法。相反,您可以不使用该属性,而使用Javascript实现自己的控件。如果您不想自己全部实现它们,建议您使用现有的主题化HTML5音频播放器

  • 主要内容:自定义标签的语法,简单示例,tld标签库描述文件,自定义标签属性,自定义标签的标签体自定义标签就是用户(开发者)自己定义的标签。自定义标签可以让 JSP 页面中不含有 Java 代码,只含有 HTML 代码和部分标签,就能实现业务逻辑的调用。 自定义标签的优点如下: 减少 JSP 页面对脚本的需求和依赖性 将 JSP 页面和业务逻辑分开,增加了程序的可维护性 可重复调用相同的业务逻辑,增加了程序的可重用性 使用自定义标签步骤如下: 自定义标签实现类 编写 tld 标签库描述文件

  • 我正在尝试创建一个自定义标签类型,该类型将包含一个“淡出”函数。这用于显示将闪烁然后隐藏的消息。 我正在使用Eclipse、SceneBuilder和Javafx。我不知道该怎么做,也不知道是否可能,但到目前为止,我已经做到了: 这显然行不通。 这是我第一次在一个文件中处理凌乱的代码(因此,我尝试将代码从版本1拉入一个新的“对象”,我可以在多个类中使用它): 如果您有任何建议或帮助,我们将不胜感激

  • 自定义标签是用户定义的JSP语言元素。当JSP页面包含一个自定义标签时将被转化为servlet,标签转化为对被 称为tag handler的对象的操作,即当servlet执行时Web container调用那些操作。 JSP标签扩展可以让你创建新的标签并且可以直接插入到一个JSP页面。 JSP 2.0规范中引入Simple Tag Handlers来编写这些自定义标记。 你可以继承SimpleTa

  • 我知道,当使用WebView加载第三方内容时,在安全性方面有很多事情需要考虑,因为WebView在您的流程中运行。Chrome自定义选项卡在哪个过程中工作?您的应用程序是否存在类似的安全问题?

  • HTML: CSS: 我刚刚有链接去谷歌现在。