-1

当其他事件发生时,我有以下 javascript 用于定位元素:

$('div.arrow').css('top', @$().offset().top - 20)

以上工作,但我很好奇是否可以使用纯 css 获得相同的效果?

我只需要担心现代浏览器,所以不用担心遗留的 IE 问题。

4

2 回答 2

1

应该非常兼容:

div.arrow {
    position: relative;
    top: -20px;
}

如果 上已经有一个position属性div.arrow,则不需要再次指定它,除非它是position: static.

于 2012-12-31T07:26:45.003 回答
0

您想要引起这种变化的具体行动是什么?

有效地“操作” CSS 更改的唯一方法是复选框 hack - 但是如果您希望在单击某物时简单地更改元素的位置(例如),您可以让 click 事件给出一个“活动”类"到有问题的元素。

例如;

div.arrow { regular: styles here; }
div.arrow.active { 
    position: relative;
    top: -20px;
}

不过老实说,您的方式可能已经是最有效的了,尤其是当它是 onClick 事件时。

于 2012-12-31T09:48:18.580 回答