我做了一个灵活的布局,其中四个列/框并排放置在父div中。我添加了一个980px的媒体查询,该查询增加了列的宽度,并添加了一个flex-
wrap来将两个右手列推到新行上,从而创建2 x 2样式的布局。这适用于除Safari之外的所有浏览器,在Safari中,结果非常不可预测。
如果您在Chrome浏览器中查看此内容并将窗口拖到980px以下,它将按照我上面所述的方式工作。但是,在Safari中,尽管我没有设法完全重现问题,但这些框却是垂直堆叠的。
正如我所提到的,结果是无法预测的–在我的网站上实施时,该布局实际上比我制作的Fiddle更接近工作。在网站上,2 x
2布局有效,但前提是第四个方框中没有文本/小部件。一旦包含的内容达到框的整个宽度,它就会向下移动到左侧并位于第三个框的下方,就像我尝试在其后添加的任何其他框一样。
如果有人曾经遇到过该错误并且知道如何解决它,我将非常感激。我花了一整天的时间来修复它,但我完全没有想法。
HTML:
<footer class="footer">
<div class="footer-container">
<div class="footer-column" id="column-1">Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.
</div>
<div class="footer-column" id="column-2">Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.
</div>
<div class="footer-column" id="column-3">Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.
</div>
<div class="footer-column" id="column-4">Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.
</div>
</div>
</footer>
CSS:
.footer {
height: auto;
width: 100%;
background-color: #efefef;
display:-webkit-box;
display:-webkit-flex;
display:-ms-flexbox;
display:flex;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-webkit-flex-direction: column;
-ms-flex-direction: column;
flex-direction: column;
-webkit-box-align: center;
-webkit-align-items: center;
-ms-flex-align: center;
align-items: center;
}
.footer-container {
width:85%;
height:inherit;
margin-top:60px;
overflow:hidden;
display:-webkit-box;
display:-webkit-flex;
display:-ms-flexbox;
display:flex;
-webkit-box-pack: justify;
-webkit-justify-content: space-between;
-ms-flex-pack: justify;
justify-content: space-between;
}
.footer-column {
min-width:20%;
max-width:20%;
margin-bottom:40px;
}
#column-1 {background-color:red}
#column-2 {background-color:yellow}
#column-3 {background-color:blue}
#column-4 {background-color:green}
@media only screen
and (min-width : 0px)
and (max-width : 980px) {
.footer-container {
-webkit-flex-wrap: wrap;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
-webkit-box-orient: horizontal;
-webkit-box-direction: normal;
-webkit-flex-direction: row;
-ms-flex-direction: row;
flex-direction: row;
}
.footer-column {
margin-bottom:50px;
min-width:45% !important;
max-width:45% !important;
}
}
尝试用等价的替换min-width
和max-width
声明flex
。
代替这个:
.footer-column {
min-width: 20%;
max-width: 20%;
margin-bottom: 40px;
}
.footer-column {
min-width: 45% !important;
max-width: 45% !important;
margin-bottom: 50px;
}
尝试这个:
.footer-column {
flex: 0 0 20%;
margin-bottom: 40px;
}
.footer-column {
flex: 0 0 45%;
margin-bottom: 50px;
}
如何避免flex列中的项目拉伸到全宽?我希望它是创建时的原始大小。
本文向大家介绍在C ++中正确使用堆栈和堆?,包括了在C ++中正确使用堆栈和堆?的使用技巧和注意事项,需要的朋友参考一下 堆栈-函数内部声明的所有变量将占用堆栈中的内存。因此,函数内的任何局部变量都位于堆栈中。 堆-这是程序的未使用内存,可用于在程序运行时动态分配内存。因此,如果我们希望某些东西的寿命比声明它的函数的寿命更长,则必须在堆上分配它。 示例 堆内存中的主要问题是碎片,而堆栈中更容易出
问题内容: 我想要一个具有特定高度的垂直菜单。 每个孩子都必须填充父母的身高,并且中间对齐文本。 孩子的数量是随机的,因此我必须使用动态值。 Div 包含随机数量的子代(),这些子代始终必须填充父代的高度。为此,我使用了flexbox。 为了使文本中间对齐,我使用了技巧。但是使用表格显示需要使用高度100%。 我的问题是无法在webkit(Chrome)中使用。 有解决此问题的方法吗? 还是有一种
我试图建立一个具有以下依赖关系的应用程序。 这是我在红帽网站上找到的一个例子-http://www.jboss.org/quickstarts/eap/helloworld-jms/ 我正在使用Netbeans 8.0.2。(还在dos和eclipse中使用Maven命令进行了尝试)我在构建时遇到了一个错误,下面是相同的日志: 我可以在以下路径找到文件: https://maven.reposit
什么是正确的CSS来强制Safari在默认的flex容器中不重叠flex项? Safari似乎为包含大量内容的flex项目提供了太多的宽度。 flex项目在Chrome和Firefox中显示良好。 CSS: HTML: 摆弄代码: http://jsfidle.net/ll05grus/6
问题内容: 我目前正在使用HtmlUnit开发一些测试。它正在加载一个包含braintree.js(其表单加密库)的页面。我跑了一堆,但我被困在所谓的加密货币上。有问题的JS是: HtmlUnit抛出: 我想HtmlUnit不包含加密。我自己可以包括一个密码库吗? 问题答案: 根据您的评论,我不得不告诉您HtmlUnit在涉及JavaScript时令人不安。它将抱怨很多关于变量未定义和未知函数等问