Luc*_*tos 5 html javascript css jquery
所以我有一个带有计算位置的变量,它使元素与JQuery居中,我之所以这样做是因为我不知道元素的宽度,所以我把它变成动态的.
var $x = $("#line").outerWidth();
var $result = "calc( 50% - " + $x +"px / 2 )";
Run Code Online (Sandbox Code Playgroud)
然后我尝试将它设置为中心($ result的值),如下所示:
$("#line").animate({
"left": $result,
"top" : "15px"
}, 1000 );
Run Code Online (Sandbox Code Playgroud)
可悲的是,这不起作用,只有最重要的价值.
非常感谢任何建议,谢谢.
如果你已经使用了calc(CSS3) 那么你就不会反对在你的 CSS 中使用:
transition和calc()#line{
transition: 1s;
/*...other stuff...*/
}
Run Code Online (Sandbox Code Playgroud)
并在你的 jQuery 中(而不是.animate())
var outW2 = $("#line").outerWidth() / 2;
$("#line").css({
left : "calc(50% - "+ outW2 +"px)",
top : 70
});
Run Code Online (Sandbox Code Playgroud)
.animate()负边距(用于居中)对于所有较旧的浏览器,您可以.animate() 像以前一样简单地使用,
将元素移动到 50%,但也移动到-半角左边距(使其居中):
var outW2 = $("#line").outerWidth() / 2;
$("#line").animate(){
left: "50%",
marginLeft : -outW2
}, 1000);
Run Code Online (Sandbox Code Playgroud)
jsBin 演示(跨浏览器解决方案)
| 归档时间: |
|
| 查看次数: |
837 次 |
| 最近记录: |