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

无法识别的HTML元素的默认设置

谷梁宁
2023-03-14
问题内容

如果我在HTML中使用自定义或不受支持的元素,则仍然可以设置样式,浏览器将呈现它们。

例如,mainInternet Explorer11和更早版本源]不支持HTML5
元素。当main由IE呈现时,涉及margin和的CSS规则overflow将被忽略。这意味着display无法识别的元素的值为inline

无法识别的元素的初始设置在哪里定义?

(注意:我不是在问使用自定义元素的利弊。我只是想知道CSS默认情况下的功能。)


问题答案:

与其说是 所有 元素,不如说是 无法识别的 元素。请记住,CSS支持XML和HTML。在XML中,所有元素均 无法识别

在CSS 2.1规范中,第6.1.1节说:

6.1.1指定值

用户代理必须首先根据以下机制(优先顺序)为每个属性分配一个指定的值:

  1. 如果级联产生一个值,请使用它。除此之外,如果值为“ inherit”,则在下面的““ inherit”值”中定义指定的值。

  2. 否则,如果该属性被继承并且该元素不是文档树的根,请使用父元素的计算值。

  3. 否则,请使用属性的初始值。每个属性的初始值在属性的定义中指示。

根据定义,无法识别的元素不会在用户代理样式表中提及,并且由于我们在谈论默认行为,因此在作者样式表中也不会提及。因此1不适用。

display属性在9.2.4’display’属性中定义。在那里的规则中,它说Inherited: no,所以2不适用。

因此适用3。再次从9.2.4的规则开始,我们有了Initial: inline,所以元素是内联的。

对于HTML块级元素,由于它们在用户代理的样式表中已列出,因此默认情况下它们是块。对于其他显示值,例如table,类似list-item



 类似资料:
  • 问题内容: 我正在尝试让github在Angular工作。 在我看来,我想这样标记,因为我有很多画廊: 基本上,所有指令应该做的就是启动轮播。除非我使用ng-repeat,否则该指令可以完美运行。我猜指令正在处理ng-repeat之前加载。 没有人对如何解决此问题有任何想法,而无需为每种样式的滑块构建模板和指令? 非常感谢! 这是指令: 问题答案: 何时完成模型绑定或ng-repeat的Angul

  • 问题内容: 在哪里可以找到浏览器的HTML元素默认CSS? 许多HTML元素都带有一些默认的CSS属性,这些属性有时会导致未知/有害的行为。例如,输入框在不同浏览器中的显示方式有所不同。我正在寻找一个涵盖新CSS3属性和新HTML5元素的地方。 我在其他(较旧的)问题(例如浏览器的默认CSS样式表中看到了答案,这些问题提出了CSS重置的解决方案。有时不需要这种解决方案,通常我实际上想保留一些基本属

  • 我正在尝试使用绝对定位将标签文本与其相应的输入字段对齐。然而,标签并没有将我的输入div识别为其父级,而似乎是相对于外部登录div定位标签文本。 HTML: CSS: 登录名和密码塞进表单的一角,而不是输入字段

  • 所以我才刚刚开始学习JavaFX,我用场景构建器做了几个文本字段。我为每个TextField分配了一些提示文本,但是当我启动应用程序时,第一个TextField已经被选中,所以我看不到提示文本。我能做点什么吗?

  • 我正在android的clock应用程序上尝试一段appium自动化代码,但我的代码倾向于跳过滚动逻辑。我还尝试了findelement()和gettext()来标识该元素,但仍然没有成功。代码如下:

  • 我对硒很陌生。 我尝试构建一个测试来验证网页元素(小图标)是否显示在页面上。 因此,在我的类的顶部,我通过xpath定义了Web元素。 Xpath我在应用右键单击元素并单击检查后从检查中复制。 @通过(xpath=“//*[@id=”referrals“]/tbody/tr[2]/td[2]/div/img[2]”)私有WebElement链和twoarrowsicon查找; 然后在同一个类中,我