不能用var设置边距:JavaScript,CSS和jQuery
Can't set margins with var: JavaScript, CSS and jQuery
我不太擅长编写移动网页布局等等。
我写过这个:
.HTML:
<div id="title">...</div>
JavaScript
$("#title").css("margin-left", "7%");
$("#title").css("margin-right", "7%");
var i = screen.width * 0.018 + "px"; // It would be 24.588 at resolution of 1366
$("#title").css("margin-top", i); // And i wanted to use 24.588px here
$("#title").css("margin-bottom", i); // and here.
Chrome 在左侧和右侧显示div 边距,但不渲染顶部和底部边距...
所有margin_*
属性都不应该用下划线分隔,而应该用-
短划线分隔,如下所示:
$("#title").css("margin-left", "7%");
$("#title").css("margin-right", "7%");
var i = screen.width * 0.018 + "px";
$("#title").css("margin-top", i);
$("#title").css("margin-bottom", i);
jQuery的.css()
方法,当以这种形式使用时,将CSS属性名称作为其第一个参数,将要设置的值作为其第二个参数。
另一种更好的方法是将对象传递给.css()
:
var margin = screen.width * 0.018 + "px";
$('#title').css({
marginLeft: "7%",
marginRight: "7%",
marginTop: margin,
marginBottom: margin
});
请注意,此处您需要使用属性的驼峰大小写版本。
另外,为什么不使用百分比作为上边距和下边距,而不是在 JavaScript 中计算它们呢?
不需要
任何下划线或破折号,您需要使用大写字母,例如:
$("#title").css("marginLeft", "7%");
这可能更简单。
function marge() {
var sw = $(window).width() * 0.018 + "px";//get margin
$("#title").css({margin: sw+' 7%'});//set margin tb lr
}
marge();//run initially
$(window).resize(function() { marge(); });//to adjust on resize of the window
第 2 行和第 3 行解决了这个问题,其余部分允许它在需要时在窗口调整大小时再次运行该功能。
做了一个小提琴:http://jsfiddle.net/filever10/z2HQL/
相关文章:
- 在屏幕中央显示图像 CSS jQuery
- 如何打印隐藏文章(Css/JQuery)
- 如何设置DIV背景图像css jquery
- CSS/JQuery/Javascript加载图标仅适用于firefox
- fadeOut”;被禁用”;通过一行看似温和的CSS(jquery bug?)
- CSS: jQuery:将右边距应用于 li 元素,除了每个第 4 个子元素(仅适用于 display:block 的元
- CSS + Jquery Slide在调整大小时切换菜单问题
- 使用 css jquery 设置背景图像
- css JQuery animate 不起作用
- CSS/JQuery 链接悬停不会触发
- 使用 .css jQuery 的 Safari 中的问题
- CSS jQuery - 展示图像(淡入淡出)
- 如何将 Cookie 与点击事件显示的内容一起使用?(HTML/CSS/jQuery)
- 网站加载CSS / Jquery样式缓慢
- 创建一个可调整大小的日历(html/css/jquery)
- CSS/jQuery-响应设计的关闭按钮停留在右上角
- css+jQuery样式.css切换器,用于新的jQuery版本
- Bootstrap 3不允许我在悬停时使用CSS/JQuery图像替换
- (CSS/jQuery)如何用jQuery解决top和bottom属性之间的冲突
- 使用JavaScript更改CSS(jQuery)