一个诡异的CSS问题

2011-11-20 21:25:09 +08:00
 OnlyBlue
网页上一个元素,我用Firebug定位是:

.profile .tags

然后我就写了CSS代码:

.profile .tags {
display: none;
}

在IE9下测试,这个区块消失了,达到预期效果。

可是奇怪的是,在Firefox 7.0 和 Firefox 3.6下,这个区块依然显示。

这会是什么问题呢?
5579 次点击
所在节点    设计师
8 条回复
westdrug
2012-02-10 13:38:09 +08:00
写个公共 .undis{display:none;} 加在目标class中 。
kamal
2012-02-10 13:50:05 +08:00
连Firebug都用上了啊?
这会是什么问题呢?
linnchord
2012-02-10 13:52:21 +08:00
有优先级更高的覆盖了,firebug下应该能查看是什么定义覆盖了。
clowwindy
2012-02-12 00:00:11 +08:00
这样的问题没有具体代码就只能猜常见原因了。而常见原因有很多。
推荐个网站,求助html css js相关问题的时候可以把能重现问题的代码贴上去,便于解答:

http://jsfiddle.net/
qiuai
2012-02-12 13:37:01 +08:00
最好是能做个简单的测试页面出来吧...
要不然还真不好测试.
bladecamper
2012-02-12 19:31:38 +08:00
别忘记检查下页面文件和CSS文件编码是否一致。
turing
2012-04-24 13:41:41 +08:00
不知道lz指的是否是Multiple Classes或称subset class selector:

如果你网页上的元素如div 有两个类:.profile .tags即<div class="profile tags">

可以采用 Multiple Classes 选择符选择到仅匹配带有这两个类的元素,写法是:

.classA.classB { /* write some cool stuff */ } (中间不留空格)

但很杯具的是,ie6不支持这种选择器(我想这可能是一种高级选择器的实现方式,例如div[class~=value]),所以请尽量在开发环境中避免使用这种选择器写法。至于firefox,应当很早就支持了这种写法
benzhe
2012-04-24 14:05:22 +08:00
在firebug的“HTML”右侧“样式”栏,看是否找到你写的 .profile .tags { ... } 样式,如果没有,则有可能如 @bladecamper 所说是 css 或 html 文件编码的问题,要用合适的编辑器修改编码;如果有,则看是否已经无效,即有被一条删除线划去,如果有,则可能是优先级问题,可以尝试提高优先级如 div.profile div.tags { ... }

写得太罗嗦了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/21812

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX