jquery 使用属性 border-size : border-box 指定元素的错误高度

标签 jquery css border-box box-sizing

我有一个任意高度的元素。 元素具有属性 box-sizing: border-box。 如果使用jquery指定100px高度,结果将是元素的高度等于120。 可能出了什么问题?

js:

$('#element').height(100);

CSS:

#element{
    background-color: green;
    height: 50px;
    width: 300px;
    padding: 10px;
    box-sizing: border-box;
}

https://jsfiddle.net/yurri_87/8sLovkba/

最佳答案

height() 函数仅设置元素的高度,如果要将总高度包括内边距、边框和边距设置为 100,则使用 outerHeight()

$('#element').outerHeight(100);

通过使用 height() 你强制 jQuery 将元素本身的高度设置为 100,这就是为什么即使你使用 box-sizing: border-box ,它不会有任何区别。

更多引用: http://api.jquery.com/outerheight/

希望有帮助

关于jquery 使用属性 border-size : border-box 指定元素的错误高度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40763422/

相关文章:

jquery - 需要将键映射到 JSON 正文中的参数

javascript - 在 jQGrid 中报告用户错误

css - html 高度 100% 给我的不仅仅是 100%

html - 带有省略号的动态文本旁边的图标

jquery - 想要使用 jquery 向 td 添加填充

javascript - 如何始终使用 flexbox 填充父高度?

css - 标题的边距被添加到正文(如何解决?)

css - flex 盒盒尺寸 : border-box not working

css - 具有最小高度和边框框的 IE8 布局

javascript - 当响应需要一段时间时,我应该如何显示旋转图像