使用 PHP 检测用户代理然后加载正确的 CSS 样式表是一种好方法吗?
Is it a good approach to detect user agent with PHP and then load proper CSS stylesheet?
如主题标题所示,我正在做一些项目,但我的 CSS 在 Mozilla 中运行良好,但在 Opera 中以 px 为单位的尺寸是 different.I 试图使用百分比尺寸来解决这个问题,但其他问题 appears.It 的某种 Opera 问题,因为它以其他方式识别 CSS 代码,因为在检查元素时,它 returns 完全不同于 div 的 px 尺寸和example.My 的边框 避免它的想法是为特定浏览器创建单独的 CSS 文件,并在检查用户代理后选择正确的文件?也许存在更短的方法来解决这个问题?我需要我的网站在 Mozilla 中正确显示,歌剧,Chrome.
虽然可能,但根据检测到的浏览器加载不同的 CSS 通常不被认为是最佳做法,并且 违背了 CSS 的目的。在你做出决定之前:
- 考虑编写跨浏览器兼容的 CSS:
- 使用
em
或rem
代替px
作为font-size
单位;
- 将特定于浏览器的前缀添加到需要它以增加兼容性的属性;
- 有疑问时使用 Can I Use - 这是一个很棒的工具;
- 查看 browser specific selectors
作为个人说明,我自己尝试过这种方法,但很快就落后于更新所有必需的 CSS 文件。大约一年后,我最终将它们合并到一个文件中,仅此一项更改就比预期的要难。
如主题标题所示,我正在做一些项目,但我的 CSS 在 Mozilla 中运行良好,但在 Opera 中以 px 为单位的尺寸是 different.I 试图使用百分比尺寸来解决这个问题,但其他问题 appears.It 的某种 Opera 问题,因为它以其他方式识别 CSS 代码,因为在检查元素时,它 returns 完全不同于 div 的 px 尺寸和example.My 的边框 避免它的想法是为特定浏览器创建单独的 CSS 文件,并在检查用户代理后选择正确的文件?也许存在更短的方法来解决这个问题?我需要我的网站在 Mozilla 中正确显示,歌剧,Chrome.
虽然可能,但根据检测到的浏览器加载不同的 CSS 通常不被认为是最佳做法,并且 违背了 CSS 的目的。在你做出决定之前:
- 考虑编写跨浏览器兼容的 CSS:
- 使用
em
或rem
代替px
作为font-size
单位; - 将特定于浏览器的前缀添加到需要它以增加兼容性的属性;
- 有疑问时使用 Can I Use - 这是一个很棒的工具;
- 使用
- 查看 browser specific selectors
作为个人说明,我自己尝试过这种方法,但很快就落后于更新所有必需的 CSS 文件。大约一年后,我最终将它们合并到一个文件中,仅此一项更改就比预期的要难。