我在firefox上检索确切的css属性值(以“%”表示)时遇到问题。
假设我们有一个非常简单的标记:
<div id="box">box</div>
和这个CSS:
#box{
width:200px;
height:200px;
left:10%;
position:absolute;
background:red;
}
而且 我想 通过js 检索左侧位置 (在“%”中)
使用mootools很容易(演示->
http://jsfiddle.net/steweb/AWdzB/):
var left = $('box').getStyle('left');
或jQuery(演示->
http://jsfiddle.net/steweb/RaVyU/):
var left = $('#box').css('left');
或通过普通js(演示->
http://jsfiddle.net/steweb/tUAKA/):
function getStyle(el,styleProp){ //from ppk's quirksmode
var x = document.getElementById(el);
if (x.currentStyle)
var y = x.currentStyle[styleProp];
else if (window.getComputedStyle)
var y = document.defaultView.getComputedStyle(x,null).getPropertyValue(styleProp);
return y;
}
var left = getStyle('box','left');
但是,如果您在 firefox
(8.0.1)上进行尝试,则会看到结果不正确(应该为10%,但为91px)。问题是:这个新版本的firefox是否存在错误?有谁知道这是否是已知的错误?难道我做错了什么?
谢谢 :)
更新 :我也在较旧的firefox版本上尝试过,它是不正确的(它总是返回px值)。为了完整性,它在IE上可以正常工作
正确答案是对我在bugzilla上提交的错误的评论
为了获得正确的%值(也在firefox上),display
应将元素(或其父元素之一)设置为none
不清楚的是:为什么在相同的浏览器/版本上(请参阅XP / win7上的firefox 7或mac osx / ubuntu上的Opera
11.5)却在不同的操作系统上,行为不同?
顺便说一句,@ thg435发布的规范(并在mdn上进行了报道)仍在不断变化。
问题内容: 假设规则如下: 有没有办法以某种方式获得“ 65%”的回报,而不是像素值? 谢谢。 编辑: 不幸的是,在我的情况下,使用DOM方法是不可靠的,因为我有一个导入其他样式表的样式表,因此 cssRules 参数最终以 null 或 未定义的 值结尾。 但是,这种方法在大多数直接的情况下都可以使用(一个样式表,文档的 head 标记内的多个单独的样式表声明)。 问题答案: 恐怕没有内置的方法
问题内容: 我使用CSS已经有很多年了,我一直都是个“百分百”的人,因为我总是使用百分比而不是像素来定义高度和宽度(例如,在设置边距,填充等,在这种情况下,我使用像素)。 我会做这样的事情: 但是我经常看到这样的例子: 我的问题是:将一个 整体 与另一个 整体 相比有什么好处? 问题答案: 行动网页。%为此。因为它将(显然)调整为适合。 但是,当您想要固定宽度(例如,要以某种方式显示的文本文章)时
问题内容: 我试图在CSS 中将a设置为一定的百分比高度,但它的大小与其中的内容相同。但是,当我删除HTML 5 时,它可以工作,并按需要占用整个页面。我希望页面进行验证,那我该怎么办? 我在上有此CSS ,其ID为: 问题答案: 我正在尝试在CSS中将div设置为某个百分比高度 百分比是多少? 要设置百分比高度,其父元素(*)必须具有明确的高度。这是不言而喻的,如果您将height保留为,则该块
我正在使用Elasticsearch 1.7.3为分析报告积累数据。 我有一个保存文档的索引,其中每个文档都有一个名为“duration”(请求花费了多少毫秒)的数字字段和一个名为“component”的字符串字段。可能有许多文档具有相同的组件名称。 例如。 我想生成一份报告,说明每个组件: 此组件的所有“持续时间”字段的总和。 此总数占所有文档总持续时间的百分比。在我的例子中 每个组件的文档占总
问题内容: 我正在尝试使用带有百分比的height属性,但是它不起作用。我想使用百分比,因此在任何分辨率下看起来都不错。 我该如何运作? 问题答案: 当您使用宽度或高度时,您应该问的第一个问题是什么?因此,您还需要对父元素应用高度,因此,假设您的父元素位于body标签内,则需要在CSS中使用此元素 所以,现在你的元素是的 注意:另外,当您处理定位的元素时,您可能会遇到一种情况,即您的高度不会超过当
我有一个带有四个标签的图表: 使用plugin,我想用以下代码显示每个饼图中的百分比值: 我得到的是所有饼片的100%价值,而不是各自的百分比。这是JSFIDLE(https://jsfiddle.net/kingBethal/a1Lvn4eb/7/)