重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
有时候在写CSS的过程中,某些限制总是不起作用,这就涉及了CSS样式覆盖的问题。
让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:域名申请、网站空间、营销软件、网站建设、临高网站维护、网站推广。
查找一些教材中(w3schools等),只说css的顺序是“元素上的style” “文件头上的style元素” “外部样式文件”,但对于样式文件中的多个相同样式的优先级怎样排列,没有详细说明。经过测试和继续搜索,得知优先级如下排列:
1. 样式表的元素选择器选择越精确,则其中的样式优先级越高:
id选择器指定的样式 类选择器指定的样式 元素类型选择器指定的样式所以上例中,#navigator的样式优先级大于.current_block的优先级,及时.current_block是最新添加的,也不起作用。
2. 对于相同类型选择器制定的样式,在样式表文件中,越靠后的优先级越高
注意,这里是样式表文件中越靠后的优先级越高,而不是在元素class出现的顺序。比如.class2 在样式表中出现在.class1之后:
.class1 { color: black;}
.class2 { color: red; }
.class1 {color: black;}
.class2 {color: red;}
而某个元素指定class时采用 class="class2 class1"这种方式指定,此时虽然class1在元素中指定时排在class2的后面,但因为在样式表文件中class1处于class2前面,此时仍然是class2的优先级更高,color的属性为red,而非black。
3. 如果要让某个样式的优先级变高,可以使用!important来指定:
.class1 {color: black !important;}
.class2{color: red;}
dreamweavercccss样式默认是内联,内联样式可以通过style属性直接套进定义对象的HTML标记中去,即style属性值就是内联样式。
因为各个浏览器默认的样式不同,你这种情况可以使用下面代码清除边距
style*{margin:0;padding:0;}/style建议做网站的时候,设置个reset.css样式表清除各个浏览器的默认样式,已达到做的网页在各个浏览器中达到统一,下面把YUI
Reset
CSS代码贴出
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td {
margin:0;
padding:0;
}
table {
border-collapse:collapse;
border-spacing:0;
}
fieldset,img {
border:0;
}
address,caption,cite,code,dfn,em,strong,th,var {
font-style:normal;
font-weight:normal;
}
ol,ul {
list-style:none;
}
caption,th {
text-align:left;
}
h1,h2,h3,h4,h5,h6 {
font-size:100%;
font-weight:normal;
}
q:before,q:after {
content:'';
}
abbr,acronym { border:0;
}
内容 content :盒子的主要区域,盒子中的文本内容以及后代元素都显示在内容区域中。
内边距 padding :内容与盒子边界的距离。
边框 border :边框显示在盒子的边界上。
外边距 margin :盒子和相邻兄弟元素或父元素的距离。
盒子的大小=内容的大小+内边距的大小+边框的大小
元素默认 总宽度 = 父元素内容的宽度 - 元素自己的左右外边距
元素默认 内容宽度 = 父元素内容的宽度 - 元素自己的左右外边距 - 元素自己的左右边框宽度 - 元素自己的左右内边距
写法:*{}
星号即为通配符选择器,写在其中的样式会应用页面到所有的元素中,所以使用的频率并不高,主要用于清除浏览器默认样式。
在使用各种元素的过程中,我们会发现很多元素都是有默认样式的,比如body标签有默认的padding值和margin值,h1和p标签有默认的行高字号,margin值,a标签有默认的下划线,列表前面有小圆点等等,常常会干扰我们进行页面的编写,所以我们可以事先使用通配符选择器进行浏览器默认样式清除。
更精准的清除方法
刚刚我们使用的通配符选择器,会给所有元素都设置一遍默认样式,解析的工作量会比较大,所以我们可以根据我的页面里到底有哪些元素需要清除,使用群组选择器写出更精确的清除默认样式css,如:
可以把它写入一个外部样式表reset.css,如果需要清除直接导入就可以啦。
1、清除在编写页面中由于浏览器默认样式带来的干扰。
2、兼容性更好,不同浏览器的默认样式可能会有所不同,如果不清楚可能会造成我们编写的页面在不同浏览器上的效果有所出入。
选择器部分文章:
选择器介绍(一)标签选择器、id选择器、类选择器
选择器介绍(二)后代选择器,子代选择器,交集选择器,并集(群组)选择器
通配符选择器清除浏览器默认样式