从CSS

时间:2018-09-05 00:42:09

标签: html css attributes

也许我错过了某些东西,但是我发现我无法从CSS代码中设置html标签的某些属性。

一些例子:

div { draggable: true; }
img { target: "_blank"; }

我仍然可以:

[draggable=true] { bla: bla; }

所以它不仅被遗忘了。

也许它可以在某些浏览器上运行,我对此一无所知,但是我在文档中没有找到任何有关它的信息,所以我认为-如果可以工作-它不是 安全。

我不明白,为什么?

无论如何,您都可以设置背景,为什么某些属性不能从CSS设置?它们是某些特殊的属性类别,还是只是有人认为它们不值得进行cssyffication?

是否有一些规则来管理它,或者是这样处理它,或者以某种方式我错过了Google运行的简单答案?

3 个答案:

答案 0 :(得分:1)

为帮助确定您是否在编写有关属性的有效CSS规则,您可以在此处找到HTML属性列表:https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes

从技术上讲,您永远不会使用CSS设置任何HTML 属性。 HTML属性用于配置元素功能的各个方面,而不是样式(尽管稍后会讨论一些样式交叉)。属性是内联或通过JavaScript设置的,可以在CSS中用作选择器来设置元素的样式,但是它们的值不会受到CSS的更改或影响。

区别在于,在CSS中,您声明的是样式属性的值,而不是元素功能实际上,{ {1}}是HTML元素的全局属性,它通过应用这些样式来接受内联CSS规则和函数的值。即使使用style之类的伪类,CSS也不会导致检查输入元素。相反,它将input:checked { color: red; }属性的红色值添加到已检查的任何输入元素(例如,在html:color上显式带有属性。

同样,在您的示例<input checked />中,您没有将任何元素的功能更改为[draggable=true]{ property: value; }。相反,您选择具有定义的draggable 的任何元素,并通过CSS声明为其添加样式属性。

在您的示例draggable中,您尝试将div { draggable: true; }设置为具有可拖动的真实样式,该样式由于div不是样式属性而无效。

有些传统属性的功能会影响样式,并且看起来与CSS属性相同(即draggablewidthheight)。这些可能会使样式属性和元素属性混淆,因为它们会使线条模糊。

答案 1 :(得分:0)

CSS代表级联样式表,用于样式化html元素。 HTML元素可以具有许多不同的属性,例如“ id”,“ class”,“ name”,“ target”,“ src”和“ style”,仅举几例。样式是html元素的属性,某些属性(例如“目标”)具有不同的用途。您不使用CSS设置它们,因为它们不是样式或没有样式属性。您可以使用javascript设置其他属性。

答案 2 :(得分:-1)

HTML代表超文本标记语言。 HTML用于构建结构或类似建筑物的网站。然后使用CSS(层叠样式表)来设计和“绘制”网站。

HTML是一种基于标签的语言,具有h1h6pformapre,{ {1}},imgulhr。这些标记具有以下属性:br具有forminput具有ahref具有img等。CSS使用HTML元素来设置样式网站。