Div布局问题 - 无法使用页面扩展/缩小标题

时间:2013-07-23 21:06:28

标签: html css

我目前正在设计一个简单的网络应用,供各种用户使用,屏幕尺寸为1024x768到1600x1200显示器。

这是我迄今为止所取得的成就:http://jsfiddle.net/AdyQ5/

不幸的是,页面的顶部区域似乎溢出到了正文中。关于如何解决这个问题的任何想法?

这是我的代码:

CSS

#header {
    width: 100%;
    height: 20%;
    min-height: 20%;
    max-height: 20%;
    position: fixed;
    border-bottom: 1px solid #e8e8e8;
}
#main {
    width: 100%;
    height: 80%;
    min-height: 80%;
    max-height: 80%;
    position: fixed;
    overflow-y: scroll;
    overflow-x: none;
    top: 20%;
}
#text_header {
    font-size: 1em;
    font-weight: bold;
}
body {
    margin: 0px;
    font-family: Arial, Helvetica, sans-serif;
}
#title, #message {
    width: 95%;
}
.container {
    padding: 10px;
}
label {
    font-size: 0.8em;
}

HTML

<div id="header">
  <div class="container"> 
  <span id="text_header">Virtual Idea Wall</span> 
    <p>
        <label for="title">Please give your idea a title</label>
        <br />
        <input type="text" id="title" name="title"/>
    </p>
    <p>
        <label for="message">Please provide details of your idea</label>
        <br>
        <input type="text" id="message" name="message"/>
    </p>
    <p>
        <input type="submit" id="sendmessage">
    </p>
    </input>
  </div>
</div>

<div id="main">
  <div class="container">
    <div id="chat"></div>
  </div>
</div>

4 个答案:

答案 0 :(得分:2)

您只需删除或调整<p>代码的默认边距。

p { margin:0; }

Updated Fiddle

要真正动态,您需要从标题中删除所有高度属性:

#header {
    width: 100%;
    position: fixed;
    border-bottom: 1px solid #e8e8e8;
}

Additional demo

答案 1 :(得分:0)

您应该查看Responsive Web Design(RWD)并使用/修改一些现有的解决方案,例如BootstrapGumbyFoundation(仅举几个例子)更为人所知的。

答案 2 :(得分:0)

请为您的css尝试此操作,但您必须限制标题div中的内容。

#header {
width: 100%;
height: 20%;
position: fixed;
border-bottom: 1px solid #e8e8e8;
top: 0px;
overflow: hidden;
}
#main {
width: 100%;
height: 80%;
position: fixed;
overflow-y: scroll;
overflow-x: none;
top: 20%;
}

更新了fiddle

答案 3 :(得分:0)

如果你的标题试图包含它看起来像的两个文本框,那就不够大了。由于您没有为标题指定overflow,因此它只是将其溢出到主区域。

解决此问题的一种方法是增加标头的大小,或者在标头太小的情况下为标头指定溢出。

如果您希望标题为overflow:hidden

,则这是一个更新的小提琴

Updated Fiddle

请理解,如果内部太多,你从未告诉CSS如何处理标题。所以它违约了。如果您希望文本框成为主文本的一部分,则可能会意外地将它们放在标题内。