2014-02-16 2 views
0

적절한 가로 메뉴를 만들려고 시도한 결과 처음으로 약간의 문제가 발생했습니다. 하위 메뉴 위로 마우스를 가져 가면 하위 메뉴가 표시됩니다. Chrome, Firefox 및 IE에서 테스트 한 결과 모두 동일한 문제가 있습니다. 나는 해결책을 찾기 위해 일주일 내내 수색을 해왔으므로 어떤 도움을 주시면 감사하겠습니다. Heres는 메뉴 HTMLCSS 드롭 다운 메뉴에서 부모 메뉴 차단

<li><a>Courses</a> 
<ul> 
    <li><a>RII31813</a> 
    <ul> 
    <li><a>Student Information</a></li> 
    <li><a>BSBWHS301A Maintain workplace saftey</a></li> 
    <li><a>RIIBEF301D Run on-site operations</a></li> 
    <li><a>RIICOM201D Communicate in the workplace</a></li> 
    <li><a>RIINHB301D Set up and prepare for drilling operations</a></li> 
    <li><a>RIIRIS301D Apply risk management processes</a></li> 
    <li><a>RIISAM209D Carry out operational maintenance</a></li> 
    <li><a>MSAPMSUP172A Identify and minimise environmental hazards</a></li> 
    <li><a>AEDEL301A Provide work skill instruction</a></li> 
    <li><a>RIINHB307D Conduct conventional core drilling</a></li> 
    <li><a>RIINHB308D Conduct wireline core drilling</a></li> 
    <li><a>RIINHB324D Carry out grouting or cementing operations</a></li> 
    <li><a>RIINHB208D Assist diamond core drilling</a></li> 
    <li><a>RIIQUA201D Maintain and monitor site quality standards</a></li> 
    <li><a>RIIVEH305D Operate and maintain a four wheel drive vehicle</a></li> 
    </ul> 
    </li> 
</ul> 
</li> 

과를 heres 메뉴 CSS :

어떤 도움이 apreciated된다
#menu ul { 
    margin: 0px 0 0 0; 
    _margin: 0; /*IE6 only*/ 
    opacity: 0; 
    visibility: hidden; 
    position: absolute; 
    top: 38px; 
    left: 0; 
    z-index: 1;  
    background: #444; 
    background: linear-gradient(#444, #111); 
    box-shadow: 0 -1px 0 rgba(255,255,255,.3); 
    border-radius: 3px; 
    transition: all .2s ease-in-out; 
} 

#menu li:hover > ul { 
    opacity: 1; 
    visibility: visible; 
    margin-left: 0; 
} 

#menu ul ul { 
    top: 0; 
    left: auto; 
    float:right; 
    margin: 0 0 0 20px; 
    _margin: 0; /*IE6 only*/ 
    box-shadow: -1px 0 0 rgba(255,255,255,.3);  
} 

#menu ul li { 
    float: none; 
    display: block; 
    border: 0; 
    _line-height: 0; /*IE6 only*/ 
    box-shadow: 0 1px 0 #111, 0 2px 0 #666; 
} 

#menu ul li:last-child { 
    box-shadow: none;  
} 

#menu ul a {  
    padding: 10px; 
    width:auto; 
    _height: 10px; /*IE6 only*/ 
    display: block; 
    white-space: nowrap; 
    float: none; 
    text-transform: none; 
} 

#menu ul a:hover { 
    background-color: #0186ba; 
    background-image: linear-gradient(#04acec, #0186ba); 
} 

#menu ul li:first-child > a { 
    border-radius: 3px 3px 0 0; 
} 

#menu ul li:first-child > a:after { 
    content: ''; 
    position:absolute; 
    left: 40px; 
    top: -6px; 
    border-left: 6px solid transparent; 
    border-right: 6px solid transparent; 
    border-bottom: 6px solid #444; 
} 

#menu ul ul li:first-child a:after { 
    left: -6px; 
    top: 50%; 
    margin-top: -6px; 
    border-left: 0; 
    border-bottom: 6px solid transparent; 
    border-top: 6px solid transparent; 
    border-right: 6px solid #3b3b3b; 
} 

#menu ul li:first-child a:hover:after { 
    border-bottom-color: #04acec; 
} 

#menu ul ul li:first-child a:hover:after { 
    border-right-color: #0299d3; 
    border-bottom-color: transparent; 
} 

#menu ul li:last-child > a { 
    border-radius: 0 0 3px 3px; 
} 

, 감사합니다

+0

모든 당신의 CSS는'#의 menu'를 사용하지만,이 ID가'menu' 인 요소가 없습니다. 하하. 문제를 현지화 해 주셔서 감사합니다. 그러나 매우 쉽게 도움을 줄 수있는 좀 더 많은 HTML이 필요합니다. –

+0

http://jsfiddle.net/ 데모를 만드십시오 – EmileKumfa

+0

아래 답변이 효과가 있습니까? –

답변

0

참고 : 나는 원래 HTML 코드에 대해 잘 모릅니다, 나는 가정 이것은 올바른 HTML 일 수도 있고 진행할 수도 있습니다.

HTML :

<ul id="menu"> 
    <li><a>Courses</a> 
     <ul> 
     <li><a>RII31813</a> 
     <ul> 
      <li><a>Student Information</a></li> 
      <li><a>BSBWHS301A Maintain workplace saftey</a></li> 
      <li><a>RIIBEF301D Run on-site operations</a></li> 
      <li><a>RIICOM201D Communicate in the workplace</a></li> 
      <li><a>RIINHB301D Set up and prepare for drilling operations</a></li> 
      <li><a>RIIRIS301D Apply risk management processes</a></li> 
      <li><a>RIISAM209D Carry out operational maintenance</a></li> 
      <li><a>MSAPMSUP172A Identify and minimise environmental hazards</a></li> 
      <li><a>AEDEL301A Provide work skill instruction</a></li> 
      <li><a>RIINHB307D Conduct conventional core drilling</a></li> 
      <li><a>RIINHB308D Conduct wireline core drilling</a></li> 
      <li><a>RIINHB324D Carry out grouting or cementing operations</a></li> 
      <li><a>RIINHB208D Assist diamond core drilling</a></li> 
      <li><a>RIIQUA201D Maintain and monitor site quality standards</a></li> 
      <li><a>RIIVEH305D Operate and maintain a four wheel drive vehicle</a></li> 
     </ul> 
    </li> 
</ul> 

는 CSS는 :

여기 잘 작동 내부 <ul>

#menu ul ul { 
    top: 0; 
    left: 120px; 
    float:right; 
    margin: 0 0 0 20px; 
    _margin: 0; /*IE6 only*/ 
    box-shadow: -1px 0 0 rgba(255,255,255,.3);  
} 

그것의 위치를 ​​변경 : JSFIDDLE DEMO

+0

감사합니다. 이전에 시도했지만 조금 더 땜질하고 두 개의 여분의 ID를 사용하여 완벽하게 작동하도록했습니다. 감사합니다. – user2834090