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