【问题标题】:Dynamic Positioning of HTML ElementsHTML 元素的动态定位
【发布时间】:2014-05-15 20:18:45
【问题描述】:

我的网站运行良好,看起来还不错等。问题是我在定位、浮动等方面不是最好的。我必须手动设置越来越大的边距我添加的每个附加段落。

我的导航栏由固定 div 内的 ul 组成。 ul 不是浮动的,但“li”是浮动的。我需要一种方法来定位此元素和其他元素,以使所有内容都位于导航栏下方。我尝试过使用 clear: both;无济于事。我知道我的定位到处都是,我真的不明白定位和浮动是如何/如果被继承的。

这是website的链接。

HTML:

<!DOCTYPE html>
<html>
    <head>
        <link href='http://fonts.googleapis.com/css?family=Ubuntu:400,500,400italic' rel='stylesheet' type='text/css'>
        <link rel="stylesheet" type="text/css" href="stylesheet.css">
        <link rel="stylesheet" type="text/css" href="webfonts/stylesheet.css">
        <title>
            Artwork
        </title>
    </head>
    <body>
        <div class="navbar">
        <img src="images/navbar/title.png" class="navbar">
            <ul>
                <li><a href="index.html">Home</a></li>
                <li><a href="art.html">Art</a></li>
                <li><a href="about.html">About Me</a></li>
            </ul>
        </div>
        <h1 id="header">Welcome to my Website!</h1>
        <p>
            The purpose of this website is to showcase my artwork, and, in a way, my HTML skills. Click on
            one of the links up top, and you can see some of my <b>artwork</b> or maybe learn <b>about me</b>!
        </p>
    </body>
</html>

CSS:

html{
    height: 100vh;
    width: 100vw;
    margin: 0px;
}

body{
    height: 100vh;
    width: 100vw;
    margin: 0px;
    background-color: #009900;
}

div.navbar{
    height: 50px;
    width: 100vw;
    position: fixed;
    background-image:url('images/navbar/navbar.png');
    background-repeat:repeat-x;
}

#header{
    position: relative;
    float: left;
    margin: 40px 0px 0px 5px;
    font-family: 'League Gothic', sans-serif;
}

p {
    position: absolute;
    margin: 100px 0px 0px 5px;
    font-family: 'Ubuntu', sans-serif;
}

img.navbar{
    float: left;
}

ul{
    list-style-type: none;
    margin: 4px 0px 0px 0px;
    padding: 0;
    overflow: hidden;
}

a:link,a:visited
{
display: block;
width: 120px;
font-weight:  500;
font-family: 'Ubuntu', sans-serif;
color:  #FFFFFF;
text-align: center;
padding: 4px;
margin: 0px;
text-decoration:  none;
}

li{
    float: left;
{

【问题讨论】:

    标签: html css


    【解决方案1】:

    是的,而不是手动为所有内容提供边距,为什么不为整个包装器使用边距固定导航栏 check this fiddle 之后的内容

    .nav-bar{
        height:50px;
        overflow:hidden;
         background-color:#000;
         width:100%;
         position:fixed;
         top:0px;
         left:0px;
     }
    
    .content{
        margin-top:75px;
    }
    

    和html

    <div class="nav-bar">
        <h1>
            topbar
        </h1>
        <ul>
            <li>one</li>
            <li>tow</li>
            <li>three</li>
        </ul>
    </div>
    <div class="content">
        <h2>content</h2>
        <p>hi hello ouyasd asdasda dasdasd</p>
         <p>hi hello ouyasd asdasda dasdasd</p>
         <p>hi hello ouyasd asdasda dasdasd</p>
         <p>hi hello ouyasd asdasda dasdasd</p>
    </div>
    

    【讨论】:

      猜你喜欢
      • 2017-11-16
      • 2014-03-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多