使用动态CSS样式表的更好方法; IE11的特别之处,以及其他浏览器的其他浏览器

时间:2016-04-27 12:04:25

标签: html css jsp internet-explorer internet-explorer-11

我一直在阅读其他答案,但我认为我有一个特定的背景。我正在开发一个旧的遗留代码Web项目。最初,他们使用的是IE5,但目前他们使用的是IE8。现在,他们决定使用IE11。问题是他们希望两个版本共存。

因此,某些功能(与滚动条大小和颜色相关)需要区别对待。例如,对于SELECT元素,IE11上的滚动箭头必须为红色,其他浏览器必须为白色。

我放弃了这样做的一些可能性;比如为每个元素编写新规则,以便样式表上定义的css规则“重载”。

我会使用这样的条件评论:

<!--[if IE]>
    This content is ignored in IE10 and other browsers.
    In older versions of IE it renders as part of the page.
  <![endif]-->

但IE&gt; 9不再支持它。

所以,我知道最好的选择是使用JS。我的想法如下:

<%if (request.getHeader("User-Agent")!=null && request.getHeader("User-Agent").indexOf("rv:11.0") != -1) {
   cssSheetName = "special";
}else {
   cssSheetName = "normal";
}%>

这样我就可以正确导入工作表了:

<link rel="stylesheet"  href="<%=CTXT%>/css/<%=cssSheetName%>.css">

这是一种正确的做法吗?或者这是一个肮脏的解决方案或拙劣的工作?还有其他更好的方法吗?

提前Tahnks。

0 个答案:

没有答案