简体   繁体   English

jQuery .css()中的CSS box-shadow

[英]CSS box-shadow in jQuery .css()

Firefox 18 does not seem to recognize the -moz-box-shadow or the box-shadow CSS attribute. Firefox 18似乎无法识别-moz-box-shadowbox-shadow CSS属性。

If I use border-color , everything works fine. 如果我使用border-color ,一切正常。

$($this).hover(
    function () {
        //$(this).css('border-color', '#ff0');
        $(this).css('box-shadow', '10px', '10px', '5px', '#888');
        //$(this).css('-moz-box-shadow', '10px', '10px', '5px', '#888');
    }, function () {
        $(this).css('border-color', '');
        //$(this).css('border-width', '');
    }
);

What am I doing wrong? 我究竟做错了什么?

You need to make the arguments into one string literal. 您需要将参数设置为一个字符串文字。 The value parameter of the css(property name, value) function is one argument. css(property name, value)函数的value参数是一个参数。

 $(this).css('box-shadow', '10px 10px 5px #888');

This: 这个:

$(this).css('box-shadow', '10px', '10px', '5px', '#888');

is an incorrect syntax. 语法不正确。 You need to have one value for the CSS property: 您需要为CSS属性设置一个值:

$(this).css('box-shadow', '10px 10px 5px #888');

Needs to be: 需要是:

$(this).hover(function() {
   $(this).css('box-shadow', '10px 10px 5px #888');
}, function() {
   $(this).css('border-color', '');
});

It should be: 它应该是:

$(this).css('-webkit-box-shadow', '10px 10px 5px #888');
$(this).css('-moz-box-shadow', '10px 10px 5px #888');
$(this).css('box-shadow', '10px 10px 5px #888');

For Safari, Google Chrome and Opera use 适用于Safari,谷歌Chrome和Opera

$(this).css('-webkit-box-shadow', '10px 10px 5px #888');

For Mozilla Firefox use 对于Mozilla Firefox使用

$(this).css('-moz-box-shadow', '10px 10px 5px #888');

For other web browsers use 对于其他Web浏览器使用

$(this).css('box-shadow', '10px 10px 5px #888');

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM