我想知道是否有任何方法专门为Safari使用CSS编写CSS。我知道那里必须有东西,但我还没有找到它。什么Safari特定的纯CSS黑客在那里?
回答
我认为这个问题是有效的。我同意其他答复,但这并不意味着这是一个可怕的问题。我只有一次使用Safari CSS黑客作为临时解决方案,后来摆脱它。我同意你不应该只针对Safari,但不知道如何去做。
仅供参考,本hack只针对Safari浏览器3,同时还针对Opera 9中
@media screen and (-webkit-min-device-pixel-ratio:0) {
/* Safari 3.0 and Opera 9 rules here */
}
因此,等待,你想只使用CSS为Safari编写CSS?我想你回答了你自己的问题。 Webkit有非常好的CSS支持。如果您正在寻找仅webkit风格,请尝试here。
您必须使用JavaScript或您的服务器进行用户代理嗅探,才能将CSS专门发送到Safari/WebKit。
在CSS中有一些黑客可以用来定位Safari,比如在分号后面加上散列/磅(#),这会导致Safari忽略它。例如
.blah { color: #fff; }
.blah { color: #000;# }
在Safari中,颜色将是白色,其他所有颜色都是黑色。
但是,您不应该使用黑客,因为它可能会在未来导致浏览器出现问题,并且可能在旧版浏览器中产生不良影响。最安全的方法是使用服务器端语言(例如PHP)来检测浏览器,然后根据用户使用的浏览器提供不同的CSS文件,或者使用JavaScript执行相同操作,然后切换到一个不同的CSS文件。
服务器端语言是更好的选择,因为并非每个人都在浏览器中启用了JavaScript,这意味着他们看不到正确的样式。另外,JavaScript会在页面正确显示之前增加一些需要加载的信息量。
Safari使用WebKit,这非常适合渲染CSS。我从来没有遇到过任何在Safari中不起作用的东西,但在其他现代浏览器中(不包括IE,它有它自己的问题)。我建议确保你的CSS是standards compliant,因为问题可能在于CSS,而不是在Safari中。
这真的取决于你正在尝试做的。你是否试图在safari中使用一些CSS3功能做一些特别的事情,或者你是否试图使网站跨浏览器兼容?
如果您试图使网站跨浏览器兼容,我建议使用正确的CSS编写网站在safari/firefox/opera中看起来不错,然后使用条件CSS在IE中对IE进行更改。这应该(希望)能够让你兼容未来的浏览器,这些浏览器在遵循CSS规则方面越来越好,并提供了跨浏览器兼容性。 This is an example.
通过使用条件样式表,您可以避免全部在一起和目标浏览器。
如果你正在寻找做一些特别的野生动物园检查this。
@media屏幕和(-webkit分钟设备像素比:0){}
这似乎定位webkit的(包括Chrome)...或是这个真正Safari-只要?
- 1. CSS平台特定的黑客
- 2. 那里有什么样的CSS库吗?
- 3. 这些是什么CSS黑客?
- 4. 特定于Safari的CSS
- 5. 为什么我的师在那里?
- 6. 那里有什么pcap_pkthdr?
- 7. 这是什么JavaScript黑客?
- 8. Safari浏览器的CSS黑客并非来自Chrome浏览器
- 9. 什么是IE浏览器CSS黑客的起源?
- 10. 如何编写Safari(5)特定的CSS?
- 11. 移动设备Javascript/CSS支持。那里有什么?
- 12. 那里有什么好的SQL Podcast?
- 13. 为什么CSS在Safari中崩溃?
- 14. 即CSS的黑客明星
- 15. IE浏览器支持CSS变量有什么黑客吗?
- 16. 这是什么装配,它为什么在那里?
- 17. codeigneter:在那里把IMG,CSS,脚本
- 18. 纯CSS没有什么有边距
- 19. Internet Explorer 7.0 CSS黑客
- 20. Palm webOS CSS瞄准黑客?
- 21. 操作系统检测的CSS黑客(又名需要“PC只”CSS黑客)
- 22. 这个黑客试图做什么?
- 23. IE 9 css问题或css黑客
- 24. 为什么我的SSH在连接到github时挂在那里?
- 25. 黑莓推特客户端
- 26. css样式定心在Safari
- 27. PorterDuff.Mode.DST_IN越来越黑在那里应该是透明的
- 28. Visual Studio输出窗口 - 那里有什么,为什么?
- 29. 什么是类文件?那个文件里有什么?
- 30. PHP:在那里
这不起作用。 – 2011-05-13 18:52:26
这可能是因为WebKit被固定以应付它。这个答案是从2008年,当上面的黑客工作在Safari。它现在不起作用的事实突出了我首先提出的关于不使用黑客的观点,因为他们不能保证在将来工作。 – 2011-05-13 19:23:08
好点。 :-) – 2011-05-13 22:30:36