2

我有一个 div,它附加了附加的子 div,并且定位在父 div 之外。

我希望父 div 在单击时有一个轮廓,但轮廓围绕子 div 延伸。

有没有办法让大纲只围绕父 div。

我不能使用边框,因为父 div 已经有边框,我只想使用轮廓来突出显示单击的 div。

小提琴:jsfiddle.net/PZ7eW/1

4

1 回答 1

2

如果我正确理解了您的问题,则您需要在激活border时进行更改。覆盖包围元素中所有元素的矩形。divoutline

编辑

由于评论,您似乎无法更改边框,也无法为“轮廓”使用外包装。您可以尝试使用内部定位元素。请看一下小提琴。

div不能正常接收焦点,因此也不能模糊。您可以通过为元素设置 a 来强制任何元素接收焦点tabindex

看起来outline在不同的浏览器中表现不同:在 FF 中,它覆盖包含元素中所有元素的矩形,在 Chrome 和 IE 中,它仅覆盖父元素(这是预期的行为),在 Opera 中outline也出现在每个子元素周围。因此,原始问题的答案是:不可能仅仅改变outline.

jsFiddle 的演示

于 2013-07-22T07:59:23.843 回答