【发布时间】:2012-09-27 22:56:54
【问题描述】:
这是我的 jQuery 代码:
<script type="text/javascript" src="js/jquery.js">
</script>
<script type="text/javascript">
$(document).ready(function() {
get_font_size();
set_sidebar();
});
function get_font_size()
{
var b=$(window).width();
var side_size=b*260/1440;
b=b-side_size;
$("#sidebar").css({"width":side_size});
$("#alexa-widget img").css({"width":side_size});
$(".fb-like-box").attr("data-width",side_size);
}
function set_sidebar()
{
var b=$(window).width();
var font_size=b*65/1440;
var font_size_2=b*133/1440;
var margin_top=b*10/1440;
margin_top*=-1;
margin_top=Math.round(margin_top);
$("#my_tabs li").css({"font-size":font_size});
$("#header").css({"font-size":font_size_2,"margin-top":margin_top});
}
</script>
除了 margin-top 属性外,一切正常。我无法将 margin-top 分配给负值。它失败但字体大小和其他属性工作正常。为什么 jquery css 设置会因负值而失败?如果我这样做相同的 CSS 内部它工作得非常完美。我需要这个来根据屏幕分辨率更改网页所以我不能在 CSS 中这样做。我需要 jQuery 修复这个。我的代码中已经有 viewport 元标记所以请不要建议视口或媒体查询解决方案。我已经用警报(margin_top)检查了margin_top变量,它根据需要向我显示了一个正确的负值,因此只有css设置部分失败才能正确进行计算。请帮我解决这个问题。谢谢。
【问题讨论】:
标签: javascript jquery css