php - CSS 和浏览器兼容性

标签 php css

有很多方法可以解决 CSS 浏览器兼容性问题。 例如使用 Box 模型设计或为不同的浏览器开发不同的样式表或使用动态 CSS 技术(在 CSS 文件中编写 PHP 脚本)。

有什么方法可以知道浏览器中正在执行的样式是否被该浏览器支持?

我们可以使用 PHP 代码在动态 CSS 中编写如下代码吗?我的意思是有没有什么功能或方法可以实现这个功能。

文件名: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 的支持。但仍然好奇,是否有人知道任何解决方案或替代方法?

最佳答案

您无法使用像 PHP 这样的纯服务器端解决方案来确定客户端的浏览器,因为服务器只向外发送信息而不会收到浏览器的反馈。

这听起来像是 Javascript 的工作,其中 you'd check if a particular CSS style is supported by the client's browser. .

一旦确定了请求浏览器支持的样式,您就可以使用 AJAX 和 PHP 来提供正确的样式。另一方面,您也可以使用纯 Javascript 来提供正确的样式。

与 AJAX 触发的 PHP 函数相比,使用 Javascript 函数来测试 CSS 样式支持的优势在于,您实际上可以使用 JS 测试各个浏览器的 CSS 支持,而不是依赖于某些样式的文档哪些浏览器支持,您必须使用 PHP 函数来实现。

无论如何,您需要 Javascript 来确定正在使用的浏览器。

关于php - CSS 和浏览器兼容性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3485408/

相关文章:

php - 未返回值

css - 聚合物1.0纸元素: paper-card-action section is not sticking to the bottom of paper-card

css - 标题、h1 和导航- 使导航不可移动

html - Font Awesome 可访问性问题。使用 <em> 标签代替 <i>

php - Laravel 嵌套急切加载

php - Mongo 更新当前数据,重用数据集中的字段

PHP:在变量显示不需要的字符之前回显£符号

php - 连接两个 MySQL 表,其中连接条件来自其中一个表

css - Bootstrap' 向右拉或向左拉类 !important?

css - SCSS 自定义函数和字符串额外引号