2012-12-02 3 views
2

다른 링크 내에서 HAML이 링크를 중첩하는 데 문제가 있습니다. 들여 쓰기는 HAML에서 완전히 맞지만 HTML은 매우 잘못 출력됩니다. HAML의 링크 내에서 링크를 중첩하는 데 문제가 있습니다.

원래 HAML 코드 :

<a href="/page"></a> 
<div class="item-info"> 
    <a href="/page"> 
    <h3>Item name</h3> 
    </a> 
    <a href="/different_page">Link</a> 
</div> 

을하지만, 소스를 볼 때, 그것은의를 올바르게 표시 : 나는 크롬의 요소 검사에서 HTML을 볼 때, 이것은 내가 무엇을 얻을

.item 
    =link_to page_path do 
    .item-info 
     %h3 Item name 
     =link_to 'Link', different_page_path 

하지만 페이지를 볼 때 여전히 엉망입니다.

<a href="/page"> 
    <div class='item-info'> 
    <h3>Item name</h3> 
    <a href="/different_page">Link</a> 
    </div> 
</a> 

나는 잃어 버렸고 도움이 될 것입니다. b 좋은데. 감사.

.item 
    %a{ :href => '/page' } 
    .item-info 
     %h3 Item name 
     %a{ :href => '/different_page' } Link 

LINK_TO가 visavi을 옳은 일을 수행 할 수 있도록 다음 당신은 정말 링크에 포함 된 링크를 원하는 경우

+1

링크 안에 링크를 넣으려고합니까? – Blender

+0

링크로 사용되는 큰 컨테이너가 있지만 다른 페이지로 이동하는 링크가 포함되어 있습니다. 그러나 브라우저 규칙에 따라 링크가 링크 내에 중첩되지 않는 것으로 나타났습니다. 왜 그런지는 모르겠지만 그게 그 방법이라고 생각합니다. – theReifman

+0

다른 링크의 링크를 클릭하면 어떻게 될까요? – Blender

답변

-1

방법 LINK_TO을 대신 레일의 직접 HAML 사용할 수 있습니다 (또는 어떤 프레임 워크를 사용하고 있습니까) 브라우저는 위에서 설명한대로. 이것이 haml 문제가 아니라 link_to 구현임을 깨닫는 것이 좋다.

업데이트 : 명확한 설명 - 여전히 브라우저에서 멋지게 렌더링되지는 않지만 생성 된 마크 업은 요청한대로 표시됩니다.

+0

죄송 합니다만이 방법은 효과가 없다고 덧붙여 깜빡입니다. 실제로 컨테이너에 HAML을 사용하기 시작했습니다. 브라우저는 여전히 잘못 렌더링합니다. – theReifman

+0

네, 저의 대답에서 그 토론을 참조하려고했습니다. 대답을 편집하여 명확하게 만듭니다. – froderik

관련 문제