简体   繁体   English

CSS水平菜单和子菜单项并排垂直显示

[英]CSS Horizontal menu with sub-menu items display vertical side by side

I'm having trouble displaying my nav-columns side by side in the drop. 我在下拉菜单中并排显示导航列时遇到问题。

See here http://fiddle.jshell.net/Dnamixup/ML57B/1/ 看到这里http://fiddle.jshell.net/Dnamixup/ML57B/1/

Also I think I have my position:relative in the wrong place, that could be the problem? 我也认为我的立场是:相对位置错误,可能是问题所在?

Thank you guys 感谢大伙们

<div class="nav-wrap">
<ul class="nav">
    <li><a href="#">Canvas Prints</a>

        <div class="nav-column">
            <ul>
                <li><a href="#">Abstract Canvas</a>

                </li>
                <li><a href="#">Banksy Canvas</a>

                </li>
                <li><a href="#">City Canvas</a>

                </li>
            </ul>
        </div>
        <div class="nav-column">
            <ul>
                <li><a href="#">Abstract Canvas</a>

                </li>
                <li><a href="#">Banksy Canvas</a>

                </li>
                <li><a href="#">City Canvas</a>

                </li>
            </ul>
        </div>
        <div class="nav-column">
            <ul>
                <li><a href="#">Abstract Canvas</a>

                </li>
                <li><a href="#">Banksy Canvas</a>

                </li>
                <li><a href="#">City Canvas</a>

                </li>
            </ul>
        </div>
    </li>
    <li><a href="#">Wall Stickers</a>

        <div class="nav-column">
            <ul>
                <li><a href="#">Abstract Stickers</a>

                </li>
                <li><a href="#">Banksy Stickers</a>

                </li>
                <li><a href="#">City Stickers</a>

                </li>
            </ul>
        </div>
        <div class="nav-column">
            <ul>
                <li><a href="#">Abstract Stickers</a>

                </li>
                <li><a href="#">Banksy Stickers</a>

                </li>
                <li><a href="#">City Stickers</a>

                </li>
            </ul>
        </div>
                    <div class="nav-column">
            <ul>
                <li><a href="#">Abstract Stickers</a>
                </li>
                <li><a href="#">Banksy Stickers</a>
                </li>
                <li><a href="#">City Stickers</a>
                </li>
            </ul>
        </div>
    </li>
    <li><a href="#">Art Prints</a>

    </li>
    <li><a href="#">Wall Murals</a>

    </li>
    <li><a href="#">Personalised Photos</a>

    </li>
</ul>

/* NAV RESET */
 .nav {
    margin:0;
    padding:0;
    list-style:none;
}
.nav a {
    text-decoration:none;
}
.nav li ul {
    list-style:none;
}
/* NAV STYLE */
 .nav li {
    float:left;
    padding:10px;
    position:relative;
}
.nav li div {
    display:none;
    position:absolute;
}
.nav li:hover > div {
    display:block;
}
.nav .nav-column {
    float:left;
}

Here you go. 干得好。

WORKING DEMO 工作演示

The CSS Change: CSS变更:

.nav li div {display:none;position:absolute; left:-39px;}

To make it sit side by side, here you go. 要使其并排放置,就在这里。

WORKING DEMO - 2 工作演示-2

The CSS Change: CSS变更:

.nav li div {display:none;position:absolute; left:-39px; width:470px;}

Hope this helps. 希望这可以帮助。

.nav-column {float:left;border:1px solid red;}
.nav-column ul{ list-style-type: none;padding:0;margin:0;}
.nav-column ul li{border:1px solid #999;}

JSFiddle Demo JSFiddle演示

Here is an updated fiddle so you can display the drop-down in 2 columns, 3 etc 这是更新的小提琴,因此您可以在2列,3列等中显示下拉列表

The answer above and this are both helpful so thank you everyone! 上面的答案都对您有帮助,谢谢大家!

http://jsfiddle.net/ML57B/15/ http://jsfiddle.net/ML57B/15/

<div class="nav-wrap">
<ul class="nav">
    <li><a href="#">Canvas Prints</a>

        <div>
            <div class="nav-column">
                <ul>
                    <li><a href="#">Abstract Canvas</a>

                    </li>
                    <li><a href="#">Banksy Canvas</a>

                    </li>
                    <li><a href="#">City Canvas</a>

                    </li>
                </ul>
            </div>
            <div class="nav-column">
                <ul>
                    <li><a href="#">Abstract Canvas</a>

                    </li>
                    <li><a href="#">Banksy Canvas</a>

                    </li>
                    <li><a href="#">City Canvas</a>

                    </li>
                </ul>
            </div>
        </div>
    </li>
    <li><a href="#">Wall Stickers</a>

        <div>
            <div class="nav-column">
                <ul>
                    <li><a href="#">Abstract Stickers</a>

                    </li>
                    <li><a href="#">Banksy Stickers</a>

                    </li>
                    <li><a href="#">City Stickers</a></li>

                </ul>
            </div>
            <div class="nav-column">
                <ul>
                    <li><a href="#">Abstract Stickers</a>

                    </li>
                    <li><a href="#">Banksy Stickers</a>

                    </li>
                    <li><a href="#">City Stickers</a>

                    </li>
                </ul>
            </div>

        </div>
    </li>
    <li><a href="#">Art Prints</a>

    </li>
    <li><a href="#">Wall Murals</a>

    </li>
    <li><a href="#">Personalised Photos</a>

    </li>
</ul>

    /* NAV RESET */
 .nav {
    margin:0;
    padding:0;
    list-style:none;
}
.nav a {
    text-decoration:none;
}
.nav li ul {
    list-style:none;
}
/* NAV STYLE */
 .nav li {
    float:left;
    padding:10px;
    position:relative;
}
.nav > li > div {
    display:none;
    position:absolute;
    width:470px;
}
.nav li:hover > div {
    display:block;
}
.nav .nav-column {
    float:left;
    width:160px;
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM