jQuery有height()en width()函数,以像素为单位返回高度或宽度...
如何使用jQuery 获取元素的填充或边距值(以像素为单位)和整数?
我的第一个想法是做以下事情:
var padding = parseInt(jQuery("myId").css("padding-top"));
Run Code Online (Sandbox Code Playgroud)
但是,如果在ems中给出填充,例如,我如何获得以像素为单位的值?
查看Chris Pebble建议的JSizes插件,我意识到我自己的版本是正确的:).jQuery总是以像素为单位返回值,因此只需将其解析为整数即可.
感谢Chris Pebble和Ian Robinson
我发现的唯一解决方案是 ($(this).innerHeight() - $(this).height()) / 2
但是/ 2不是正确的选项,因为用户可以使用padding-top:0px和padding-bottom:20px.
有没有办法制作更准确的填充值?
我正在思考css('padding-top')然后解析它,只采用int部分,但值可以在"em"中,例如而不是在"px"中
然后为每个值类型创建switch语句?对于em,对于px是另一个吗?
它有点复杂,在代码中占用更多空间......
我想在容器内部的某些内容旁边放置一个动态徽标(宽度变量/未知)(请参阅附件的模型 - 徽标位于绿色的右侧,内容为蓝色).我特别希望内容div延伸到页面的完整剩余宽度,如模型中所示:
但是当我尝试将内容浮动到左侧并将徽标浮动到右侧(jsfiddle)时,徽标位于内容下方,除非我将内容宽度设置为小于100%(并且我无法知道内容宽度,因为徽标宽度可以变化).
HTML:
<div id="container">
<div id="content"></div>
<div id="logo"></div>
</div>
Run Code Online (Sandbox Code Playgroud)
CSS:
#content {
border: 1px solid green;
height: 300px;
width: 100%;
float: left;
}
#logo {
border: 1px solid red;
width: 50px; /*unknown width*/
height: 50px;
float: right;
}
Run Code Online (Sandbox Code Playgroud)
如何将内容div拉伸到整个容器宽度减去徽标的宽度?