【发布时间】:2017-06-03 05:24:06
【问题描述】:
我有一个用于新网站的简单 flexbox 布局。 它有一个标题、一个导航、一个全屏显示容器外的封面以及一个内容和一个旁白。
#container {
margin: 0 auto;
max-width: 1080px;
}
#columns {
display: -ms-flex;
display: -webkit-flex;
display: flex;
flex-flow: row wrap;
}
header {
padding: 3%;
background-color: #6495ED;
}
#cover {
max-width: 1350px;
margin: 0 -135px;
padding: 3%;
background-color: #6495ED;
}
header #title {
font-size: 50px;
color: #fff;
}
nav {
width: 97%;
background-color: #6495ED;
padding: 0 1.5% 0 1.5%;
}
nav ul li {
display: inline-block;
padding: 15px 1.5% 15px 1.5%;
}
nav ul li a {
text-decoration: none;
color: #ffffff;
font-size: 1.2em;
}
nav ul li a:hover {
color: #000000;
text-decoration: none;
}
/* Content After
--------------------------------------------- */
#columns>#content {
padding: 3%;
width: 64%;
}
#columns>aside {
padding: 3%;
min-width: 24%;
background-color: #eee;
}
footer {
width: 94%;
padding: 3%;
background-color: #6495ED;
border-top: 5px solid black;
color: #fff;
text-align: center;
}
@media all and (max-width: 1350px) {
#cover {
max-width: 1080px;
margin: 0;
}
}
@media all and (max-width: 768px) {
header {
text-align: center;
}
nav {
text-align: center;
}
#columns {
-webkit-flex-flow: column wrap;
flex-flow: column wrap;
}
#columns>#content {
width: 94%;
padding: 3%;
}
#columns>#sidebar {
width: 94%;
padding: 3%;
border-top: 3px solid #E64A19;
}
}
@media all and (max-width: 330px) {
nav ul li {
display: block;
width: 94%;
}
}
<div id="container">
<!-- header -->
<header id="header">
<h1 id="title">Two Column</h1>
</header>
<!-- Navigation -->
<nav id="menu" class="clearfix">
<ul>
<li><a href="#">One</a></li>
<li><a href="#">Two</a></li>
<li><a href="#">Three</a></li>
<li><a href="#">Four</a></li>
</ul>
</nav>
<section id="cover">
</section>
<section id="columns">
<!-- Main Content area -->
<section id="content">
<!-- your content here -->
</section>
<!-- Sidebar -->
<aside id="sidebar">
<!-- your content here -->
</aside>
</section>
<footer id="footer" class="clearfix">
Copyright © Booo
</footer>
</div>
https://codepen.io/anon/pen/YQzWNe
固定为台式机和平板电脑的侧列宽度为 360 像素,然后当我进入视口的 768 像素以下时,该列消失。
我尝试用min-width:360px 替换宽度百分比,但我破坏了布局。
我该如何解决?
【问题讨论】:
-
对我来说似乎没有消失,只是在
#content下方移动。 -
是的,我必须将侧面固定在右侧,但 360 像素
-
如果你不想让它换行(移到下面的内容),不要使用
flex-flow: wrap。如果您想固定一列,请给该列flex: 0 0 <desired width>。如果您希望它在某个宽度下消失,请在您的媒体部分中为该宽度提供display: none。