折腾:
【未解决】基于html5up-landed的html5模板搭建网站主页
期间,需要让图片居中显示。

但是此处图片是:
底图,想要去适配
css image center
调试了好一会,结果由于已有的css和html太复杂,始终无法调节出我们要的效果。
又去参考
html left right layout
最后改用flex
<section class="second_row"> <div class="left_parent"> <img class="left_image" src="images/rainbow_training.jpg" /> </div> <div class="right_content"> <!-- <div class="row"> --> <!-- <div class="col-4 col-12-medium">第一行</div> <div class="col-4 col-12-medium">第二行</div> --> <div class="col-4 col-12-medium">第1行</div> <div class="col-4 col-12-medium">第2行</div> <div class="col-4 col-12-medium">第3行</div> <div class="col-4 col-12-medium">第4行</div> <div>第5行</div> <div>第6行</div> <div>第7行</div> <div>第8行</div> <!-- </div> --> </div> </section>
css
.second_row {
display: flex;
padding-top: 3.5em;
// width:100%;
// text-align:center;
// display: flex; /* establish flex container */
// flex-direction: row; /* default value; can be omitted */
// flex-wrap: nowrap; /* default value; can be omitted */
// justify-content: space-between; /* switched from default (flex-start, see below) */
// background-color: lightyellow;
}
.left_parent{
flex: 70%;
// float: left;
// width: 68%;
// position: absolute;
// left: 0px;
}
.left_image {
width: 100%;
}
.right_content {
// display: inline-block;
// width: 30%;
// // float: right;
// // float:left;
// position: absolute;
// left: 30%;
flex: 30%;
}暂时实现了:
左右布局:

只能算凑合用。
以及发现移动端无法自动适配:

需要后续想办法:
支持移动端屏幕宽度时,自动让多行在下一行显示。
其中,原先的按钮,则是支持自动适配布局的:

再去把8行的大小调节一下
不过,要去适配移动端的布局
html left right mobile to up down
结果用:
@media screen and (min-width: 480x){
.second_row {
display: flex;
padding-top: 3.5em;
// width:100%;
// text-align:center;
// display: flex; /* establish flex container */
// flex-direction: row; /* default value; can be omitted */
// flex-wrap: nowrap; /* default value; can be omitted */
// justify-content: space-between; /* switched from default (flex-start, see below) */
// background-color: lightyellow;
}
.left_parent{
flex: 70%;
// float: left;
// width: 68%;
// position: absolute;
// left: 0px;
}
.left_image {
width: 100%;
}
.right_content {
// display: inline-block;
// width: 30%;
// // float: right;
// // float:left;
// position: absolute;
// left: 30%;
flex: 30%;
}
}
@media screen and (max-width: 480x){
.second_row {
display: flex;
padding-top: 3.5em;
}
.left_parent{
flex: 100%;
}
.left_image {
width: 100%;
}
.right_content {
flex: 100%;
}
}结果:
大屏时竟然也是上下布局了

算了,去参考前面的菜单的布局,是怎么自动适配的

也是类似写法
@media screen and (max-width: 736px) {
去把这部分放到这里试试
.second_row {
display: flex;
// padding-top: 3.5em;
}
.left_parent{
flex: 100%;
}
.left_image {
width: 100%;
}
.right_content {
flex: 100%;
}
...
结果:
还是有问题
宽屏时,不对:

小屏时,也错了:

调试了半天,很是诡异的是,改为:
.second_row {
display: flex;
padding-top: 3.5em;
}
.left_parent{
flex: 70%;
}
.left_image {
width: 100%;
}
.right_content {
flex: 30%;
}然后至少大屏是OK的了。
然后再去调试小屏
【总结】
目前用:
@media screen and (min-width: 736px) {
.second_row {
display: flex;
padding-top: 3.5em;
flex-direction: row;
}
.left_parent{
flex: 70%;
}
.left_image {
width: 100%;
}
.right_content {
flex: 30%;
}
}
@media screen and (max-width: 736px) {
.second_row {
display: flex;
// padding-top: 3.5em;
flex-direction: column;
}
.left_parent{
flex: 100%;
}
.left_image {
width: 100%;
}
.right_content {
flex: 100%;
}
。。。
目前可以实现:
大屏左右布局:

小屏上下布局:

转载请注明:在路上 » 【已解决】html网页中实现左右布局和图片居中显示