如标题所述,我正在尝试将菜单移至边框菜单内。我对此并不陌生,因为它们在理论上是联系,我认为那会是类似的东西。 {位置:绝对,然后我只想选择他们想要去的地方。最重要的是,还有一个子菜单,我也需要随之移动。有任何想法吗?谢谢!我想将菜单移到边框内的右下角。

<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" type="text/css" href="style.css" />
<link rel="stylesheet" type="text/css" href="videos.css" />
<link rel="stylesheet" type="text/css" href="vines.css" />
<title>Puppy Power</title>
</head>
<body>
        <div id="page">
<header></header>
        <div id="dog logo">
    </div>

<ul id="navigation">
        <li><a href="index.html">Home</a></li>
        <li><a href="videos.html">Videos</a>
            <ul class="sub">
                <li><a href="vines.html">Vines</a></li>
                <li><a href="#">Pugs</a></li>
                <li><a href="#">Failing Dogs</a></li>
                <li><a href="#">Crazy Dogs</a></li>
                <li><a href="#">Funny Dogs</a></li>

            </ul>
        </li>


        <li><a href="#">Photographs</a></li>
        <li><a href="#">Articles</a></li>
        <li><a href="#">Contact</a></li>
    </ul>

<div id="hero"><h1><b>HERO</b></h1></div>


<div id="topvideo"><h1><b>TOP VIDEO</b></h1></div>

<div id="topphoto"><h1><b>TOP PHOTO</b></h1></div>

<div id="toparticles"><h1><b>TOP ARTICLE</b></h1></div>

<div id="content"><h1><b>CONTENT</b></h1></div>

<div id="footer"><h1><b>FOOTER</b></h1></div>

</body>
</html>

#page {
    max-width: 850px;
    min-width: 840px;
    min-height: 1550px;
    max-height: 1600px;
}

* {
    margin: 0px;
    padding: 0px;
}



#navigation {
    border: 1px solid #89cFF0;
    width: 813px;
    height: 187px;
    margin-left: 5px;

}



ul #navigation, .sub {
    list-style-type: none;


}

ul #navigation li {
    border: 1px solid #89cFF0;
    width: 125px;
    text-align: center;
    position: relative;
    float: left;
    list-style-type: none;
}

ul #navigation a {
    text-decoration: none;
    display: block;
    width: 125px;
    height: 25px;
    line-height: 25px;
    border: 1px solid #89cFF0;
}

ul #navigation li:hover > a {
    background-color: #89cFF0;
}



#hero {
    width: 813px;
    height: 408px;
    border-top: 1px solid #89cff0;
    border-bottom: 1px solid #89cff0;
    border-left: 1px solid #89cff0;
    border-right: 1px solid #89cff0;
    display: inline-block;
    margin: 5px 0px 0px 0px;
    text-align: center;
    color: red;

}

#topvideo {
    width: 267px;
    height: 370px;
    border-top: 1px solid #89cff0;
    border-bottom: 1px solid #89cff0;
    border-left: 1px solid #89cff0;
    border-right: 1px solid #89cff0;
    display: inline-block;
    vertical-align:top;
    text-align: center;
    margin: 5px 0px 5px 0px;



}

#topphoto {
    width: 267px;
    height: 370px;
    border-top: 1px solid #89cff0;
    border-bottom: 1px solid #89cff0;
    border-left: 1px solid #89cff0;
    border-right: 1px solid #89cff0;
    display: inline-block;
    vertical-align:top;
    text-align: center;
    margin: 5px 0px 5px 0px;

}

#toparticles {
    width: 267px;
    height: 370px;
    border-top: 1px solid #89cff0;
    border-bottom: 1px solid #89cff0;
    border-left: 1px solid #89cff0;
    border-right: 1px solid #89cff0;
    display: inline-block;
    vertical-align:top;
    text-align: center;
    margin: 5px 0px 5px 0px;
}

#content {
    width: 813px;
    height: 310px;
    border-top: 1px solid #89cff0;
    border-bottom: 1px solid #89cff0;
    border-left: 1px solid #89cff0;
    border-right: 1px solid #89cff0;
    margin: 0px 0px 0px 0px;
    text-align: center;
}

#footer {

    width: 813px;
    height: 100px;
    border-top: 1px solid #89cff0;
    border-bottom: 1px solid #89cff0;
    border-left: 1px solid #89cff0;
    border-right: 1px solid #89cff0;
    margin: 5px 0px 0px 0px;
    text-align: center;
}

最佳答案

CSS的问题是在选择器中,您一直将#navigation放置在不应使用的位置,这会破坏CSS。例如,您的li的规则是这样的:

ul #navigation li {
    border: 1px solid #89cFF0;
    width: 125px;
    text-align: center;
    position: relative;
    float: left;
    list-style-type: none;
}


HTML是这样的:

<ul id="navigation">
        <li><a href="index.html">Home</a></li>
        <li><a href="videos.html">Videos</a>
            <ul class="sub">
                <li><a href="vines.html">Vines</a></li>
                <li><a href="#">Pugs</a></li>
                <li><a href="#">Failing Dogs</a></li>
                <li><a href="#">Crazy Dogs</a></li>
                <li><a href="#">Funny Dogs</a></li>

            </ul>
        </li>


        <li><a href="#">Photographs</a></li>
        <li><a href="#">Articles</a></li>
        <li><a href="#">Contact</a></li>
    </ul>


您的CSS试图为<li>设置样式,该样式是#navigation的子元素,而<ul>是的子元素,因为ul是#navigation,所以没有样式。您应该这样选择它:

#navigation li {
    border: 1px solid #89cFF0;
    width: 125px;
    text-align: center;
    float: left;
    list-style-type: none;
}


JSFiddle Demo

更新的CSS:

#page {
    max-width: 850px;
    min-width: 840px;
    min-height: 1550px;
    max-height: 1600px;
}

* {
    margin: 0px;
    padding: 0px;
}



#navigation {
    border: 1px solid #89cFF0;
    width: 813px;
    height: 187px;
    margin-left: 5px;

}



#navigation , .sub {
    list-style-type: none;


}

#navigation li {
    border: 1px solid #89cFF0;
    width: 125px;
    text-align: center;
    float: left;
    list-style-type: none;
}

#navigation   a {
    text-decoration: none;
    display: block;
    width: 125px;
    height: 25px;
    line-height: 25px;
    border: 1px solid #89cFF0;
}

#navigation   li:hover > a {
    background-color: #89cFF0;
}



#hero {
    width: 813px;
    height: 408px;
    border-top: 1px solid #89cff0;
    border-bottom: 1px solid #89cff0;
    border-left: 1px solid #89cff0;
    border-right: 1px solid #89cff0;
    display: inline-block;
    margin: 5px 0px 0px 0px;
    text-align: center;
    color: red;

}

#topvideo {
    width: 267px;
    height: 370px;
    border-top: 1px solid #89cff0;
    border-bottom: 1px solid #89cff0;
    border-left: 1px solid #89cff0;
    border-right: 1px solid #89cff0;
    display: inline-block;
    vertical-align:top;
    text-align: center;
    margin: 5px 0px 5px 0px;



}

#topphoto {
    width: 267px;
    height: 370px;
    border-top: 1px solid #89cff0;
    border-bottom: 1px solid #89cff0;
    border-left: 1px solid #89cff0;
    border-right: 1px solid #89cff0;
    display: inline-block;
    vertical-align:top;
    text-align: center;
    margin: 5px 0px 5px 0px;

}

#toparticles {
    width: 267px;
    height: 370px;
    border-top: 1px solid #89cff0;
    border-bottom: 1px solid #89cff0;
    border-left: 1px solid #89cff0;
    border-right: 1px solid #89cff0;
    display: inline-block;
    vertical-align:top;
    text-align: center;
    margin: 5px 0px 5px 0px;
}

#content {
    width: 813px;
    height: 310px;
    border-top: 1px solid #89cff0;
    border-bottom: 1px solid #89cff0;
    border-left: 1px solid #89cff0;
    border-right: 1px solid #89cff0;
    margin: 0px 0px 0px 0px;
    text-align: center;
}

#footer {

    width: 813px;
    height: 100px;
    border-top: 1px solid #89cff0;
    border-bottom: 1px solid #89cff0;
    border-left: 1px solid #89cff0;
    border-right: 1px solid #89cff0;
    margin: 5px 0px 0px 0px;
    text-align: center;
}

关于html - 如何在“菜单边框”内移动菜单,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24973283/

10-12 00:13
查看更多