2016-02-29 31 views

回答

0

这里有一个想法:JsFiddle

这是CSS:

#container{ 
    display:flex 
} 
#centered{ 
    display:flex; 
    flex-direction:column; 
} 

和更新的HTML:

<div id="container"> 
    <img src="http://placehold.it/150x250/CCCCCC" /> 
<div id="centered"> 
    <img src="http://placehold.it/150x150/FEFEFE" /> 
    <img src="http://placehold.it/150x150/AAAAAA" /> 
</div> 
    <img src="http://placehold.it/150x250/BBBBBB" /> 
</div> 

Flex-box is pretty cool。只需稍微玩一下,你就会按照你想要的方式得到它。

+0

辉煌,我从来没有听说过Flex-box! –

0

你觉得像here

解决方案,我写的只是CSS这应该为你做的工作:

body { 
 
    text-align: center; 
 
} 
 

 
img { 
 
    float: left; 
 
    width: 33%; 
 
    height: 100px; 
 
} 
 

 
img:nth-child(1){ 
 
    margin-top: 100px; 
 
} 
 

 
img:nth-child(3) { 
 
    margin-top: 100px; 
 
} 
 

 
img:nth-child(4){ 
 
    float: left; 
 
    clear: both; 
 
    margin-left: 33%; 
 
    margin-top: -100px; 
 
}
<img src="http://lorempixel.com/200/200/"/> 
 
<img src="http://lorempixel.com/200/200/?v=2"/> 
 
<img src="http://lorempixel.com/200/200/"/> 
 
<img src="http://lorempixel.com/200/200/"/>

在该解决方案中,除了某些CSS外,您不必向代码添加任何内容。当然,你可以尝试调整边际以达到你想要的效果。

+0

我忘了提及我希望'image1'和'image4'包含'image2'和'image3',像这样:http://prntscr.com/a9iyu6,而不是(它当前是什么): http://prntscr.com/a9izo1 –

+0

好,解决方案更新 –

0

这是你想要的吗?

div { 
 
    padding-top:100px; 
 
    display:inline-block; 
 
} 
 

 
img { 
 
    float:left; 
 
    height:100px; 
 
    width:50px; 
 
} 
 

 
img:nth-child(2) { 
 
    margin-top:-100px; 
 
}
<div> 
 
<img src="images1.png" /> 
 
<img src="images2.png" /> 
 
<img src="images3.png" /> 
 
<img src="images4.png" /> 
 
</div>