简体   繁体   English

如何将div从底部移动到顶部

[英]How to move div from bottom to top

I have a variable height , 100%-width sub-menu which is normally positioned at the bottom of the page. 我有一个可变的height宽度 sub-menu 100%的 sub-menu ,通常位于页面底部。 I want it to be at the top of the page when viewed through a browser with a small window. 通过带有窗口的浏览器查看时,我希望它位于页面顶部。 The following is the structure of the HTML for the page: 以下是页面HTML的结构:

<div id=container style='height: 500px; background: red;'>
 <div id=content style='width: 100%; background: green;'>content</div>
 <div id=sub-menu style='width: 100%; background: blue;'>sub-menu</div>
</div>

How can I get the variable height sub-menu to the top without blocking the content of the page using CSS? 如何在不使用CSS阻止页面内容的情况下将可变高度sub-menu置于顶部?

You can use display: table-header-group; 您可以使用display: table-header-group; ... ...

HTML: HTML:

<div id=container>
    <div id=content>content</div>
    <div id=sub-menu>sub-menu</div>
</div>

CSS: CSS:

#container {
  display: table; 
  width: 100%;
}

@media (min-width: 500px) {
  #sub-menu {
    display: table-header-group;
  }
}

Demo: http://jsbin.com/lifuhavuki/1/edit?html,css,output 演示: http : //jsbin.com/lifuhavuki/1/edit?html,css,output

If you know the height of your sub-menu , then you can do it using position: relative on #container and position: absolute on both your #content and #sub-menu . 如果知道子菜单的高度 ,则可以使用#container上的position: relative#content#sub-menu上的position: absolute#sub-menu You'll also have to give the #container a top value that's equal to the height of your #sub-menu . 您还必须给#container 一个等于 #sub-menu 高度最高值

Im not sure how you have your media queries set out. 我不确定您如何设置媒体查询。 This might not be possible with your html structure so you may have to edit this for it to work. 您的html结构可能无法实现此功能,因此您可能必须对其进行编辑才能使其正常工作。

#sub-menu
{
  position:fixed;
  top:0;
  width:100%;
  background-color:#f00;
}

The code above will need to be placed inside your media query for small screens. 上面的代码将需要放在小屏幕的媒体查询中。

Here's the css media query solution. 这是CSS媒体查询解决方案。

/* Mobile Portrait Size */
@media only screen and (max-width: 479px) {
position:absolute;
top:0px;
height:auto; /* So that the content wont be lost with the reduction in width. */
}

With little more explanation of how u've placed the div or by linking it up with a fiddle would be helpful. 只需更多说明您如何放置div或将其与小提琴链接起来,将很有帮助。

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

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