javascript - 适用于 IE 和其他浏览器的条件内联 CSS?

标签 javascript jquery html css internet-explorer

我正在查看 this 的源代码地点。当您向下滚动时,页面会根据您当前的滚动位置而变化 - 产生很好的效果。

查看 FireFox 中页面的源代码,我注意到他们使用 -webkit-transform:matrix(a, b, c, d, 0, 0);处理div的移动。然而,当在 IE 中查看相同的源时,它仅显示为 transform: matrix(a, b, c, d, 0, 0);这些样式属性内联并显示如下:

火狐:

<div class="card gift" style="z-index: 0; -webkit-transform: matrix(a, b, c, d, 0, 0); right: 198px; top: 323px; opacity: 1;"></div>

IE:

<div class="card gift" style="z-index: 0; transform: matrix(a, b, c, d, 0, 0); right: 198px; top: 323px; opacity: 1;"></div>

在前面的所有示例中,a , b , cd都是基于当前滚动位置的动态变量。

我查看了this发布关于条件CSS的SO,但他们没有提到内联样式,如上面的代码所示。

这样的事可以做吗?我已尝试以下方法,但无济于事( fiddle here ):

<div class="testing" style="<!--[if IE]>background-color: #321;<!--[if !IE]> -->background-color: #F00;<!-- <![endif]-->"></div>

如果内联条件CSS是不可能的,那么他们如何根据浏览器更改内联样式?我最好的猜测是 JavaScript 在页面加载后添加属性,作为滚动位置的函数。

谢谢。

编辑:

查看提供的链接,它们包括

<!--[if lt IE 7]>      <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]>         <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]>         <html class="no-js lt-ie9"> <![endif]-->
<!--[if IE 9]>         <html class="no-js lt-i10 ie9"> <![endif]-->
<!--[if gt IE 9]><!--> <html class="no-js"> <!--<![endif]-->

在他们的页面顶部,这几乎与我提供的 SO 链接中的答案之一相同。但我不太确定这些代码行的作用。这是解决方案的一部分吗?

再次感谢。

最佳答案

我认为,您不能使用Conditional-CSS作为内联。

但是如果你想根据浏览器指定 css 样式,这里有一些 css-hacks 可用:

Css Hacks

Browser specific CSS-Hacks

关于javascript - 适用于 IE 和其他浏览器的条件内联 CSS?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21466047/

相关文章:

javascript - jQuery 数量(输入值)+/- 按钮在 IE7 上不起作用

html - 在单选按钮上设置边框和背景颜色(与 Firefox、Chrome、Safari 兼容)

javascript - 如何从 Kendo MVVM 数据绑定(bind)函数调用中获取实际的 html 元素

javascript - jQuery:如何检查何时加载了数组中的所有图像?

javascript - jQuery - 级联类和点击功能问题

javascript - 带有 if 的 html 属性控件

html - 鼠标悬停在图像上的 css/html 格式文本

javascript - 防止来自 html 检查器的安全风险?

javascript - ReactJS - 在很多组件中实现的功能

php - JQuery:Ajax POST 调用不发送数据