2011-01-15 5 views
0

마우스를 올릴 때 메뉴 옵션의 배경색을 변경하는 방법을 찾았습니다. 그러나 옵션을 가져 가면 다른 옵션을 모두 오른쪽으로 이동시키는 넓은 공간을 차지합니다. 일관성있는 공간을 유지하고 싶습니다. 그래서 마우스를 가져 가면 색상 만 변경해야합니다. 옵션이 오른쪽으로 이동합니다. 페이스 북에 메뉴 옵션이있는 방식의 정렬.호버에서 div를 제어하는 ​​방법 :

<div id="menu"> 
    <a href="/hello" id="option">home</a> 
    <a href="/hello" id="option">profile</a> 
    <a href="/hello" id="option">account</a> 
    <a href="/hello" id="option">settings</a> 
    <a href="/hello" id="option">extra</a> 
    <a href="/hello" id="option">logout</a> 
    </div> 

CSS : 아래

코드 당신이 공간을 원하지 않는, 그래서 만약 요소가, 공간을 차지 주위에

div#menu { 
    margin-left: 630px; 
    margin-top:-20px; 
    } 
    option { 
    margin-left: 20px; 
    } 
    #option:hover{ 
    background: #3F2327; 
    padding: 10px; 
    } 
+0

가능한 해결책 : 메뉴 옵션 전후에  을 사용하면 필자에게 필요한 모양을 제공합니다. 그게 좋은 연습이라면 확실하지 않은가? – AAA

답변

8

padding: 10px;

공간을 제거, 돈 ' 그것을 추가하십시오. 당신이 모든 시간을 원하는 경우뿐 아니라 또한 :hover


을 위해 모든 시간을 추가 문제와 관련이없는,하지만 단지 모범 사례 :

  • 당신은 아무튼 브라우저를 사용하는 경우 CSS를 지원하지 않거나 꺼져 있거나 그래픽이 아니기 때문에 홈 프로필 계정 설정 추가 로그 아웃 - 링크 목록이있는 경우 list markup을 사용하십시오. guidance on making it pretty이 많이 있습니다.
  • id는 문서에서 고유이어야하며 특정 요소를 식별하는 데만 사용하십시오. 한 묶음의 요소가 모두 같은 클래스의 멤버라는 것을 나타내려면 class 속성을 사용하십시오. HTML elements와 동일 클래스와 ID 이름을 사용
  • 하지 마십시오, 그것은 단지 코드가
+1

이러한 앵커 사이에는 공백이 있으므로 실제로 읽을 수있는 "홈 프로필 계정 설정 추가 로그 아웃"을 렌더링합니다. 어쨌든 적절한 HTML 목록을 사용하는 것이 실제로 좋은 생각이 아니라는 것은 아닙니다. 단지 이유가 아닙니다. – coreyward

+0

공간이 필요하지 않습니다. 하지만 옵션의 왼쪽과 오른쪽에 빈 공간도 색상이 바뀌도록 패딩을 사용하고 있습니다. 이것은 공백을 추가하는 것입니다. – AAA

+0

@coreyward - 링크에 밑줄이없는 브라우저 (lynx와 같은)에서는 여전히 문제가 있지만, 어디서 끝나고 다음이 시작되는지는 알 수 없습니다. – Quentin

2

1) 당신은 "옵션"에 # 누락을 혼란하게

2) 당신은 왜 가져가에 패딩 ? 너가 그것의 위에 공중 선회 할 때 운동을 일으키는 원인이 될 것이다.

+0

옵션의 왼쪽과 오른쪽 빈 공간이 색상을 변경하도록 패딩을 사용 중입니다. 이것은 공백을 추가하는 것입니다. – AAA

관련 문제