今天我正在尝试优化我的网站,以便在 Firefox 中获得更好的渲染效果!我的问题是 text-shadow 和 font-weight 属性...我只想为 firefox 设置自定义值(我的网站只兼容 mac,所以我不需要 IE 兼容性)但我不会单独使用只有这两个属性的样式表!!!有什么办法吗?或者我必须使用 php 脚本来过滤用户代理并为 firefox 加载自定义样式表?
提前致谢!
今天我正在尝试优化我的网站,以便在 Firefox 中获得更好的渲染效果!我的问题是 text-shadow 和 font-weight 属性...我只想为 firefox 设置自定义值(我的网站只兼容 mac,所以我不需要 IE 兼容性)但我不会单独使用只有这两个属性的样式表!!!有什么办法吗?或者我必须使用 php 脚本来过滤用户代理并为 firefox 加载自定义样式表?
提前致谢!
好的,有点晚了,但是对于像我这样不高兴听到上面的答案的人来说,有办法做到这一点。
<html>
<head>
<style type="text/css">
#myDiv
{
background-color:blue;
width: 100px;
height: 100px;
}
@-moz-document url-prefix()
{
#myDiv
{
background-color: red;
}
}
</style>
</head>
<body>
<div id="myDiv"></div>
</body>
</html>
您可以使用CSS 浏览器选择器。
您似乎只想支持支持的浏览器text-shadow
,那么为什么只针对 Firefox?您的方法应该是只更改font-weight
那些支持text-shadow
. 但这说起来容易做起来难。
浏览器嗅探器将无法工作,除非它们能够区分 Firefox 3.5 和更早版本。KahWee 链接的那个不会实现这一点,但我不建议浏览器嗅探——这不是最佳实践。
相反,我建议设置font-weight
为与 一起使用的任何内容text-shadow
,然后包含一个 IE 条件以将大多数访问者的浏览器重置为原始的、无阴影的font-weight
.
例子:
<style type="text/css" media="screen">
.some-text {
color: #fff;
font-weight: bold;
text-shadow: #000 0.1em 0.1em 0.2em;
}
</style>
<!--[if IE]>
<style type="text/css" media="screen">
.some-text {
font-weight: normal;
text-shadow: none; /* Does nothing now, but explicitly define NONE
for future IE versions as that is what is intended */
}
</style>
<![endif]-->
有了这个,您将在这些浏览器text-shadow
中正确实现:font-weight
如果你想在 IE 中使用阴影,你可以使用filter
带有 的表达式DropShadow()
,但我个人不建议使用专有的 CSS 扩展。
那么,您唯一真正的“损失”将是不font-weight
适合旧的非 IE 浏览器,例如 Firefox 3.0 和更低版本,以及 Opera 9.2x 和更低版本。
font-weight
那么,为非常有限的旧浏览器子集更改 JavaScript 或 PHP 浏览器真的值得吗?
如果答案仍然是肯定的,那么有像这样的 PHP 浏览器嗅探器。
条件仅适用于 IE,抱歉。也许其中一些功能可以帮助您,它们仅适用于壁虎浏览器:Mozilla css extensions