我有以下标记:
inputView
.content {
display: flex;
}
我基本上希望<div class="content">
<div class="contact">email@example.com</div>
<div class="branding">
<h1>Name</h1>
<img src="http://lorempixel.com/200/200" />
</div>
</div>
div显示在窗口的右上角,contact
div以页面上的剩余空间为中心;即我不希望品牌div在任何时候与接触div重叠。
我如何使用flexbox实现这一目标?
答案 0 :(得分:2)
这是实现目标的一种方法,但我认为CSS Grid Layouts得到更好的支持会更好。
lightgrey
背景只是为了表明品牌div实际占据了剩下的空间。如您所见,没有重叠。
.content {
display: flex;
flex-direction: row-reverse;
}
.branding {
width: 100%;
background: lightgrey;
text-align: center;
}
&#13;
<div class="content">
<div class="contact">email@example.com</div>
<div class="branding">
<h1>Name</h1>
<img src="http://lorempixel.com/200/200" />
</div>
</div>
&#13;
这里也是外部JSFiddle。
答案 1 :(得分:2)
我基本上希望联系人
div
显示在窗口的右上角 品牌div
以中心的剩余空间为中心 页;即我不希望品牌div
与联系人div
重叠 任何一点。
<强> CSS 强>
html, body { height: 100%; } /* enable percentage height for flex container */
.content {
display: flex;
flex-direction: column;
height: 100%; /* give the flex container a height */
}
.contact {
align-self: flex-end; /* align-right */
}
.branding {
margin: auto; /* center branding div in container */
}
使用上面的代码,联系人div
会显示在窗口的右上角,品牌div
会在页面的中心位置,并且任何时候都不会重叠。
答案 2 :(得分:0)
你可以这样做:
<强>列强>
<强> CSS 强>
.content {
display: -webkit-flex;
display: flex;
-webkit-flex-flow: row-reverse nowrap;
flex-flow: row-reverse nowrap;
}
div {
-webkit-flex: none;
flex: none;
}
.branding {
-webkit-flex: 1 0 auto;
flex: 1 0 auto;
align-items:center;
text-align:center;
}
<强> HTML 强>
<div class="content">
<div class="contact">email@example.com</div>
<div class="branding">
<h1>Name</h1>
<img src="http://lorempixel.com/200/200" />
</div>
</div>
<强> DEMO HERE 强>
<强> ROWS 强>
<强> CSS 强>
.content {
display: -webkit-flex;
display: flex;
-webkit-flex-flow: column nowrap;
flex-flow: column nowrap;
}
div {
-webkit-flex: none;
flex: none;
}
.contact {
text-align:right;
}
.branding {
-webkit-flex: 1 0 auto;
flex: 1 0 auto;
align-items:center;
text-align:center;
}
<强> HTML 强>
<div class="content">
<div class="contact">email@example.com</div>
<div class="branding">
<h1>Name</h1>
<img src="http://lorempixel.com/200/200" />
</div>
</div>
<强> DEMO HERE 强>