他のイベントが発生したときに要素を配置するために使用している次の 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 の変更を効果的に「アクション」する唯一の方法は、チェックボックスのハックです。ただし、何かがクリックされたときに要素の位置を単純に変更したい場合 (たとえば)、クリック イベントに「アクティブ」のクラスを与えることができます。 " 問題の要素に。
例えば;
div.arrow { regular: styles here; }
div.arrow.active {
position: relative;
top: -20px;
}
正直なところ、特に onClick イベントの場合は、あなたの方法がおそらく最も効率的です。