当其他事件发生时,我有以下 javascript 用于定位元素:
$('div.arrow').css('top', @$().offset().top - 20)
以上工作,但我很好奇是否可以使用纯 css 获得相同的效果?
我只需要担心现代浏览器,所以不用担心遗留的 IE 问题。
当其他事件发生时,我有以下 javascript 用于定位元素:
$('div.arrow').css('top', @$().offset().top - 20)
以上工作,但我很好奇是否可以使用纯 css 获得相同的效果?
我只需要担心现代浏览器,所以不用担心遗留的 IE 问题。
应该非常兼容:
div.arrow {
position: relative;
top: -20px;
}
如果 上已经有一个position
属性div.arrow
,则不需要再次指定它,除非它是position: static
.
您想要引起这种变化的具体行动是什么?
有效地“操作” CSS 更改的唯一方法是复选框 hack - 但是如果您希望在单击某物时简单地更改元素的位置(例如),您可以让 click 事件给出一个“活动”类"到有问题的元素。
例如;
div.arrow { regular: styles here; }
div.arrow.active {
position: relative;
top: -20px;
}
不过老实说,您的方式可能已经是最有效的了,尤其是当它是 onClick 事件时。