2013-07-22 100 views
1

我有一個div,它具有附加的子div,並且在父div之外定位。僅圍繞父元素的CSS輪廓

我想要父div有一個輪廓onclick,但輪廓圍繞子div。

有沒有什麼辦法讓輪廓完全圍繞父div。

我不能使用邊框作爲父div已經有一個邊框,我只想使用輪廓高光單擊的div。

小提琴:jsfiddle.net/PZ7eW/1

+1

難以理解,有些jsfiddle會幫助我們.. – Cherniv

+0

您可以創建一個小提琴或codepen你有什麼?或者添加一些圖片來展示你想要完成的事情? – robooneus

+0

添加一些代碼snippit以更好地理解問題 –

回答

1

如果我理解你的問題正確,您需要更改borderdiv處於活動狀態。 outline覆蓋包圍元素中所有元素的矩形。

編輯

由於評論,它看起來就像你不能改變邊界,也沒有使用外部包裝的「綱要」。您可以嘗試使用內部定位元素。請看小提琴。

另外div無法正常接收焦點,因此也不能模糊。您可以通過爲元素設置tabindex來強制任何元素獲得焦點。

貌似outline在不同瀏覽器的行爲有所不同:在FF它涵蓋了封閉的元素中的所有元素,Chrome和IE僅覆蓋父元素(這是預期的行爲)的矩形,在Opera中每一個孩子左右出現outline元素。因此,對原始問題的回答是:不可能僅僅通過改變outline來實現這一點。

A demo at jsFiddle

+0

,如原始問題所述,邊框已被使用 –

+0

然後,您需要爲'div'額外封裝。只是一會兒,我會修復答案... – Teemu

+0

我不能有一個額外的包裝,因爲這會干擾我正在運行的一些jquery,我會發布所有代碼,但超過2000行,並且這似乎與問題無關。我只是希望有一些快速簡單的解決方法到邊界問題 –