2013-04-04 70 views
0

嵌套錨我有以下代碼:隱藏在HTML/CSS

<a id="outer-anchor" href="/test"> 
    text in anchor 
    <a id="inner-anchor" href="/test2" style="display:none"></a> 
</a> 

我在不同的瀏覽器嘗試這樣做,所述內錨液滴從所述外錨定在每一個瀏覽器。所以它被渲染爲:

<a id="outer-anchor" href="/test"> 
    text in anchor 
</a>    
<a id="inner-anchor" href="/test2" style="display:none"></a> 

有人知道爲什麼以及如何解決這個問題嗎?

在此先感謝

+3

您可能/不可能有一個A在A ... – CaptainCarl 2013-04-04 09:03:44

+0

你必須移動節點超出父錨標記並將其添加到其後面。這是一個JavaScript作業。 – 2013-04-04 09:04:37

回答

0

您不能在錨標籤內部放置錨標籤。

這會將孩子節點從outer-anchor中移出來,使其成爲兄弟節點,然後將其很好地隱藏起來;

JSfiddle

HTML

<div id="parent-placeholder"> 
    <a id="outer-anchor" href="/test"> 
     text in anchor 
     <a id="inner-anchor" href="/test2" style="display:none"></a> 
    </a> 
</div> 

的JavaScript

var outer = document.getElementById('outer-anchor'); 
var inner = outer.nextSibling; 

inner.style.display = 'none'; 

inner.parentNode.removeChild(inner); 
outer.parentNode.appendChild(inner); 

輸出

<div id="parent-placeholder"> 
    <a id="outer-anchor" href="/test">text in anchor</a> 
    <a id="inner-anchor" href="/test2" style="display: none;"></a> 
</div> 

parent-placeholder格純粹的存在是爲了展示如何與父DOM元素,其中錨英寸

+0

感謝您的快速響應和解釋! – Vincent 2013-04-04 10:10:26