为什么浏览器会忽略CSS文件中的第一个选择器?
今天我就这个问题争论了几个小时,我想我会和大家分享这个问题和解决方案。该解决方案有助于进行一些搜索: 为什么浏览器会忽略CSS文件中的第一个选择器? 为什么浏览器会忽略CSS文件中的第一行? 为什么浏览器忽略了通用选择器? 我不相信我已经触动了我的web项目的CSS,但是我已经做了一些更新,并更改了一些配置。突然之间,款式变得很不对劲。在浏览器中使用inspector时,我发现没有应用CSS重置 我的CSS文件以以下内容开头:为什么浏览器会忽略CSS文件中的第一个选择器?,css,google-chrome,internet-explorer,byte-order-mark,Css,Google Chrome,Internet Explorer,Byte Order Mark,今天我就这个问题争论了几个小时,我想我会和大家分享这个问题和解决方案。该解决方案有助于进行一些搜索: 为什么浏览器会忽略CSS文件中的第一个选择器? 为什么浏览器会忽略CSS文件中的第一行? 为什么浏览器忽略了通用选择器? 我不相信我已经触动了我的web项目的CSS,但是我已经做了一些更新,并更改了一些配置。突然之间,款式变得很不对劲。在浏览器中使用inspector时,我发现没有应用CSS重置 我的CSS文件以以下内容开头: * {box-sizing:border-box;font-size
* {box-sizing:border-box;font-size:100%;line-height:1.5em;font-family:'Open Sans', sans-serif;vertical-align:baseline;word-wrap:break-word;word-break:break-word;margin:0;padding:0;border:0;-webkit-tap-highlight-color: rgba(0,0,0,0);}
我已经发现被忽略的不是通用选择器。。。因为如果我添加一行html{};在其上方,通用选择器将再次激活
我想这可能是被忽略的第一行。。。所以我改变了html{};到注释行。。。然后,下一行的第一个选择器不再工作。不知何故,CSS文件以字节顺序标记开始保存 这在Visual Studio代码或vim中是不可见的,但在Chrome的inspector中却非常明显: 作为第一行第一个字符的红点是字节顺序标记。在inspector中编辑它解决了该加载实例的问题 我不知道它是怎么偷偷地进入一个文件的。。。但使用vim很容易移除: 在vim中打开文件:vim 使用:set nobomb删除BOM表 保存并退出::w:q 希望这能帮助其他人节省一些时间
注意:文件的送达方式可能是问题所在。它是由Drupal使用打印文件\u get\u contents;输出的;,并且可能在BOM表之前插入了额外的换行符。如果BOM实际上是第一个字符,那就没问题了?这比这里的问答更适合在个人网站上发表博文。我也很确定有很多文章都在谈论这一点。示例:谢谢你的反馈,但我根本没有发表关于CSS或编码的博客。而且最后,给定的链接提供了有关字节顺序标记的信息以及问题的原因。我试图帮助的用户出现问题,但还不知道原因。感谢发布解决方案。您可以在48小时后将其标记为可接受的答案,此时可以标记。它可以在将来帮助其他社区成员解决类似的问题。谢谢你的理解。