如果在我的网页中,我为 div 定义了所有三个 css
- 排队
- 内部的
- 外部的
我知道浏览器首先寻找 1) 内联然后寻找 2) 内部和最后,它寻找外部 css。
但我只想调用外部css,怎么做??我可以通过!important
还是有其他方法?
内部样式表和外部样式表没有区别。应用哪些样式取决于:
内联样式是最具体的,然后是标识规则 (#),然后是类规则 (.),然后是元素规则。
对于具有相同特性的两个规则,例如div .main
和span.title
,这两个规则都适用,但是当它们指定相同的属性时,最后声明的一个将接管。
绕过优先级的唯一方法是使用!important
.
最好的办法是将所有内容放入外部 css 文件中。如果您必须具有内联样式,请确保您只有那些尚未在外部样式表中定义的样式。即不要复制/覆盖样式。例如,如果您的 css 文件中有以下内容:
div { padding: 5px; }
然后没有以下内联样式。
<div style="padding-right:2px;" />
把它放到css文件中
div { padding: 5px 2px 5px 5px; }
就像您说的那样,!important
如果您必须为一个页面覆盖不适用于您网站中其他页面的样式,则可以使用。
1)内联然后 2)内部和最后,它寻找外部 css。
<style>
不会。包含的CSS 和 包含的CSS 在优先级上没有区别<link>
。
但我只想调用外部css,怎么做??
您不能导致通过属性<style>
包含的 CSS 或通过style
属性包含的 CSS 被忽略。
我可以通过 !important 还是有其他方法?
您可以适用!important
于每条规则,然后希望没有任何规则包含<style>
或style
也包含!important
……但那样就是疯狂。