CSS样式不生效错误排查

来源:互联网 发布:云计算技术著名书籍 编辑:程序博客网 时间:2024/06/05 06:10

标签: CSS 不生效 前端


在写页面时,有时会发现自己写的样式无法生效,由于缺乏经验,排查以来耗时耗力,最终可能发现只是由于自己一个小小的失误导致,于是便萌生结合网上的一些经验,写一篇CSS样式不生效的文章,希望能给一些初涉此道的朋友一些帮助。

排查步骤

首先,先试一下清除缓存,重启浏览器等手段,无效后再进行进一步排查。
接着按以下流程排查:
CSS样式不生效排查流程图

以下是排查以及修改方法:
再次提醒在排查前先试一下清除缓存,重启浏览器等手段,无效后再进行进一步排查。有可能自己什么都没有做错,就是因为缓存或者浏览器的问题导致,重置一下也许问题就解决了。

常见错误

未关联外部样式表

这是一个让人很无语的错误,但我以前确实遇到过,辛辛苦苦写好了代码,发现一个样式都没有生效,傻乎乎地忙活了半天,最后居然发现自己忘了关联外部样式,当时我的心情,真是。。
如果你的样式全部不生效,首先确认关联了样式表没有,或者关联的样式位置、名字是否正确

<link rel="stylesheet" href="css/index.css"/>

样式表保存的编码错误

如果怀疑CSS表的编码错误,可以直接将css文件以utf-8的编码另存一下文件就可以了。

选择器写错

1、写后代子代选择等,涉及多个标签,类名、id等,子选择器的顺序、名字等写错了,均可能导致出错;
2、html里的标签忘记写类名、id了,而选择器用了这些漏写的类名、id等,样式自然不会生效。
3、后代选择器有没有写上空格;
4、像 div.box{} 这类选择器会不会写成了 div .box{},即多写了一个空格

语法错误

以谷歌浏览器的开发者工具为例,一般语法错误会显示为该样式被划去,样式左侧有图标提示,鼠标移入会显示英文提示。如下图所示:
这里写图片描述
一般语法错误有:
1、写错属性名,属性值不符合规范;
2、以下符号使用了中文或者全角符号:

,;{}:

3、html标签没写完整,漏了“<”或者”>”等

样式被层叠

如果是层叠导致的话,则需要提高样式的优先级。
常用的方法有:往选择器中添加元素,提高其特指度,或者在样式分号前空格加!important,如下:

background-color: pink !important;

有关层叠优先级的内容,可以参考我的另一篇文章:
CSS样式层叠规则
http://blog.csdn.net/haishangfeie/article/details/77483354

CSS样式不生效往往是由于一些细微的地方导致的,希望本篇文章能帮助你快速找到错误。各位如果有所补充的也欢迎留言,一起共同进步。

参考:
http://blog.csdn.net/guodongxiaren/article/details/50936025

原创粉丝点击