jQuery css() 函数不会应用 IE hack 属性

标签 jquery css internet-explorer

我正在尝试将内联 block 样式应用于元素(具体来说是 div)。为了在 IE 中实现这一点,你必须使用 hack:

$('#element').css(
    {
        'display'  :    'inline-block',    //applies inline-block to matched elements in all browsers except IE due to hasLayout bug
        'zoom'     :    1,                 //set hasLayout to 'true' in IE
        '*display' :    'inline'           //use asterisk to only apply 'inline' style to IE
    }
);

但是,css() 函数似乎向浏览器呈现样式,使得“*display”不会在 IE 中注册,因此不会应用“内联”样式。

关于为什么和/或如何解决这个问题有什么想法吗?

最佳答案

我认为这应该可以做到:

if($.browser.msie){
    $('#element').css({'display' : 'inline'});
}

关于jQuery css() 函数不会应用 IE hack 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1930128/

相关文章:

jquery - 是否有 "touchmoveDelta"→ 如何修改我的鼠标滚轮触摸代码?

javascript - 使用 jQuery ajax POST 接收多个数据

jquery - 在 jquery 中扩展或合并

javascript - JS 使用不同的填充

css - Firefox 中的固定位置背景图像不适用于转换后的元素。这是一个 FF 错误吗?

php - AJAX 调用后 session 变量未更新

css - 无序列表有 css 问题

Javascript 数组访问在 IE 7 中不起作用

css - Firefox 和 IE 的 Flex 问题

javascript - IE 和 html5 视频停止工作