布尔属性应该怎么写?

发布于 2024-12-03 22:06:41 字数 1159 浏览 0 评论 0原文

我一直在阅读一些关于 HTML、XHTML 等的文章。其中大多数(即 我的首选语法风格)说布尔属性应该写成没有任何值,如下所示:

<input type="text" required>

他们甚至说像这样使用此属性是错误的:

<input type="text" required="required">

本文中的一些文章链接 W3 其中表示:

如果该属性存在,则其值必须是空字符串或与该属性的规范名称匹配的 ASCII 不区分大小写的值,并且没有前导或尾随空格。

但在示例中显示如下:

以下是选中和禁用的复选框的示例。这 checked 和disabled 属性是布尔属性。

<label><input type=checkbox checked name=cheese disabled>Cheese</label>

这可以等效地写成:

<label><input type=checkbox checked=checked name=cheese disabled=disabled> Cheese</label>

您还可以混合样式;以下仍然是等效的:

<label><input type='checkbox' checked name=cheese disabled="">Cheese</label>

那么,布尔属性应该怎么写呢?根据您的经验,哪些选项是跨浏览器的,哪些不是?

I've been reading some articles about HTML, XHTML, etc. In most of them (i.e. My preferred syntax style) say that boolean attributes should be written without any value, like this:

<input type="text" required>

They even say that it is wrong to use this attributes like this:

<input type="text" required="required">

Some of this articles link W3 which says:

If the attribute is present, its value must either be the empty string or a value that is an ASCII case-insensitive match for the attribute's canonical name, with no leading or trailing whitespace.

but in the examples shows like this:

Here is an example of a checkbox that is checked and disabled. The
checked and disabled attributes are the boolean attributes.

<label><input type=checkbox checked name=cheese disabled>Cheese</label>

This could be equivalently written as this:

<label><input type=checkbox checked=checked name=cheese disabled=disabled> Cheese</label>

You can also mix styles; the following is still equivalent:

<label><input type='checkbox' checked name=cheese disabled="">Cheese</label>

So, how should the boolean attributes be written? Based in your experience, which of the options are cross-browser and which are not?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

无名指的心愿 2024-12-10 22:06:41

没有值的属性在 HTML 中有效,但在 XHTML 中无效,因为在 XML 中不允许这样做。也许这就是你的困惑的来源。因此,哪一个有效取决于文档的文档类型。

Attribues without values are valid in HTML, but invalid in XHTML, because it's not allowed in XML. Perhaps that's where your confusion is coming from. So, which one is valid depends on the doctype of your document.

一梦浮鱼 2024-12-10 22:06:41

我总是使用 checked="checked"disabled="disabled"。我确实没有理由添加它,但它在我测试的所有浏览器中始终有效。这包括 IE6+。

I always use checked="checked" and disabled="disabled". I don't really have a reason for adding it, but it has always worked in all browsers that I test in. This includes IE6+.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文