我们可以通过多种方式处理CSS浏览器兼容性问题。 例如使用Box模型设计或为不同的浏览器开发不同的样式表或使用动态CSS技术(在CSS文件中编写PHP脚本)。
有什么方法可以让我们知道浏览器中正在执行的Style是否支持该浏览器?
我们可以使用PHP代码在动态CSS中编写类似下面的代码吗?我的意思是有任何功能或方法来实现此功能。
FILENAME:styles.css.php
<?php
header("content-type: text/css");
// isStyleSupported() function will return true or false with respect to the browser it is being executed
if (isStyleSupported('min-width')) {
// styles here
} else {
// alternative style here
}
?>
我知道在CSS支持方面保留不同版本浏览器的记录可能很困难。但仍然很好奇,如果有人知道任何解决方案或替代方法吗?
答案 0 :(得分:2)
您无法使用纯服务器端解决方案(如PHP)来确定客户端的浏览器,因为服务器仅发送信息并且不会从浏览器接收任何反馈。
这听起来像是Javascript的工作,you'd check if a particular CSS style is supported by the client's browser.。
确定请求浏览器支持的样式后,您可以使用AJAX和PHP来提供正确的样式。另一方面,您也可以使用纯Javascript来提供正确的样式。
使用Javascript函数与AJAX触发的PHP函数来测试CSS样式支持的优点是,您可以使用JS实际测试单个浏览器CSS支持,而不是依赖于某些样式的文档。支持哪些浏览器,您必须使用PHP函数。
无论如何,您需要使用Javascript来确定正在使用的浏览器。
答案 1 :(得分:0)
我用Google搜索IE hack
并找到与您的问题相关的页面CSS hacks:如何在CSS中嵌入条件处理(不使用PHP)。