这个聚光灯效果在Safari 7.1+中不工作
This spotlight effect is not working in Safari 7.1+
为什么这个CodePen不能在Safari中工作?在所有的聚光灯教程中,我使用这一个,因为它做了我想要的。它可以在Chrome/Firefox中工作,但在Safari 7.1+中根本不起作用(甚至部分不起作用)。有人能告诉我吗?
http://codepen.io/cchambers/pen/Dyldj$(document).on("mousemove", function(e){
$(".spotlight").css("left",e.clientX-100).css("top", e.clientY-100);
});
body{
margin:0;
background:url(http://i.imgur.com/KHucaTQ.jpg);
background-size:100% auto;
overflow:hidden;
}
.spotlight{
cursor:none;
position:absolute;
top:100px;
left:200px;
height:200px;
width:200px;
border-radius:50%;
background:transparent;
box-shadow:0 0 0 2000px rgba(0,0,0,.85);
}
.ha{
-webkit-transform: translateZ(0);
-moz-transform: translateZ(0);
-o-transform: translateZ(0);
transform: translateZ(0);
}
<script src="//cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<div class="spotlight ha"></div>
修改你的css:
.spotlight{
cursor:none;
position:absolute;
top:100px; left:200px;
height:200px;
width:200px;
border-radius:50%;
background:transparent;
box-shadow:0 0 0 2000px rgba(0,0,0,.85);
-webkit-box-shadow:0 0 0 2000px rgba(0,0,0,.85);
}
添加的-webkit-
就可以了。
或者,更新你的Safari浏览器——你可能运行的是一个过时的版本。
阅读box-shadow
和它的浏览器兼容性:box-shadow - MDN Docs
事实证明,为了解决手头的问题,我不得不将框阴影中的"传播"更改为1900px
而不是2000px
。不知道为什么,但至少在我的Safari版本上解决了这个问题。将检查版本8和其他版本,并希望修复它。
只是想添加代码片段,以防这对任何人都有帮助
.spotlight{
cursor:none;
position:absolute;
top:24%;
left:7%;
height:20%;
width:17%;
border-radius:50%;
background:transparent;
box-shadow:0 0 0 1900px rgba(0,0,0,.65);
z-index: 2;
}
关键是我忘了添加-webkit-border-radius。愚蠢的错误
border-radius: 50%;
-moz-border-radius: 50%;
-webkit-border-radius: 50%;
相关文章:
- jQuery Datepicker可以在Safari中工作,但不能在FF或Chrome中工作
- 为什么我的JavaScript在Safari上的严格模式下不能正常工作
- jQuery$.post可以在chrome、safari中工作,但不能在FF中工作(声明成功回调函数未定义)
- 异步加载的SVG过滤器feColorMatrix在Chrome中工作,而不是在Safari或Firefox中
- RGB 到 HEX JavaScript 函数在 Chrome 中工作,但不能在 Firefox 或 Safari 中工
- setInterval 或 window.location 在 Opera、IE 和 Safari 中无法正常工作
- window.onbeforeunload在IE8中不触发(在Firefox,Chrome和Safari中工作正常)
- toLocaleString()不会'无法在Safari浏览器中工作
- 动画HTML5横幅工作在除Safari以外的一切
- Date.prototype.get日期;不能在Safari中工作
- jQuery UI手风琴无法在本地目录的Safari中工作
- html+css+js组合在Google Chrome或Safari浏览器中无法正常工作
- window.open()没有'无法在添加到主屏幕的移动Safari web应用程序中工作
- webkitAudioContext在iOS Safari上创建MediaElementSource不工作
- JQuery图像大小计算没有'不能在Chrome/Safari中工作
- JavaScript倒计时;不能在Safari中工作
- style.display无法在Chrome、Safari-Firefox、IE11中正常工作
- 为什么这个html5音频不能在chrome上工作,但在safari上工作得很好
- 为什么这个代码不能在IE中工作?Safari
- Javascript未在Firefox上执行,在Chrome上工作;Safari