2015-05-05 63 views
-1

大家好我有简单的菜单,但我不知道如何在整个广场进行链接。现在只处理链接点击。html和css3菜单链接点击无法正常工作

<ul><li><a href="#">Menu 1</a></li> 
    <li><a href="#">Menu 2</a></li> 
    <li> 
    <a href="#">Menu 3</a> 
    <ul> 
     <li><a href="#">Menu 4</a></li> 
     <li><a href="#">Menu 5</a></li> 
     <li><a href="#">Menu 6</a></li> 
    </ul> 
    </li> 
</ul> 

CSS:

ul { 
    text-align: left; 
    display: inline; 
    margin: 0; 
    padding: 15px 4px 17px 0; 
    list-style: none; 
    -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.15); 
    -moz-box-shadow: 0 0 5px rgba(0, 0, 0, 0.15); 
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.15); 
} 
ul li { 
    font: bold 12px/18px sans-serif; 
    display: inline-block; 
    margin-right: -4px; 
    position: relative; 
    padding: 15px 20px; 
    background: #fff; 
    cursor: pointer; 
    -webkit-transition: all 0.2s; 
    -moz-transition: all 0.2s; 
    -ms-transition: all 0.2s; 
    -o-transition: all 0.2s; 
    transition: all 0.2s; 
} 
ul li:hover { 
    background: #555; 
    color: #fff; 
} 
ul li ul { 
    padding: 0; 
    position: absolute; 
    top: 48px; 
    left: 0; 
    width: 150px; 
    -webkit-box-shadow: none; 
    -moz-box-shadow: none; 
    box-shadow: none; 
    display: none; 
    opacity: 0; 
    visibility: hidden; 
    -webkit-transiton: opacity 0.2s; 
    -moz-transition: opacity 0.2s; 
    -ms-transition: opacity 0.2s; 
    -o-transition: opacity 0.2s; 
    -transition: opacity 0.2s; 
} 
ul li ul li { 
    background: #555; 
    display: block; 
    color: #fff; 
    text-shadow: 0 -1px 0 #000; 
} 
ul li ul li:hover { background: #666; } 
ul li:hover ul { 
    display: block; 
    opacity: 1; 
    visibility: visible; 
} 

JSFiddle Demo

+0

创建链接?你的意思是你希望菜单在整个屏幕上显示? – BIW

+0

如果我点击灰色悬停在任何地方,他们打开一个链接 – wampir

回答

0

它会打开该链接的元素被点击时。您希望它在点击灰色框时打开链接。

因此,您必须制作与灰色框大小相同的尺寸。正如其他人指出的,你将不得不从李删除填充,并给它一个代替(或指定其高度和宽度)。

3

从li删除填充并将其添加到a中。同时设置你的显示:块。

1

移动从<li>您填充到<a>并设置锚display: block;

/* add this selector */ 
li > a { 
    padding: 15px 20px; 
    display: block; 
} 

你更新的jsfiddle:在整个sqaure https://jsfiddle.net/q5y1sg9v/1/