如何用CSS将图片置于内容右侧?图片与article标签布局疑问
问题解答
关于图片是否能放入article标签
你当前的代码里,图片已经在<article>标签内部了——它被包裹在article下的.continer容器中,属于article的后代元素,完全符合HTML语义规范,当然可以放在这里。如果想要更简洁的结构,甚至可以删掉.continer,直接让.content-text和.burger作为article的直接子元素,只要内容逻辑通顺就没问题。
如何将图片调整到内容右侧
用float虽然能实现效果,但flex布局更稳定可控,推荐修改样式如下:
修改后的CSS代码
section { display : flex; margin-left : auto; margin-right : auto; margin-bottom : 20px; margin-top : 20px; height : 50vh; width : 60vw; border-radius : 3px; box-shadow : -10px -10px 15px rgba(255,255,255, 0.5) , 10px 10px 15px rgba( 70, 70, 70, 0.12); } .art-fle1 , .art-fle2 { height : 90%; width : 100%; margin-top : auto; display: flex; /* 让article内部适配flex布局 */ align-items: center; /* 内容垂直居中 */ } .continer { display: flex; /* 核心:给容器添加flex布局实现横向排列 */ width: 100%; align-items: center; /* 文字和图片垂直居中对齐 */ justify-content: space-between; /* 文字左对齐、图片右对齐,中间留空 */ padding: 0 15px; /* 统一内边距,替代单独给文字加padding */ } .content-text { flex: 1; /* 让文字区域占据剩余空间,无需固定宽度 */ margin-right: 20px; /* 和图片保持间距 */ } .burger { width : 270px; /* 移除float:right,flex布局不需要该属性 */ }
修改后的HTML代码(修正了class属性写法错误)
<main> <section class="first-section"> <!-- 注意:单个元素的class属性只能写一个,多个类名用空格分隔 --> <article class="art-fle1 a1"> <div class="continer A"> <div class="content-text"> <h1>Header 1</h1> <p> Lorem, ipsum dolor sit amet consectetur adipisicing elit. Quaerat corporis voluptate vel ab consectetur repudiandae sunt accusantium. Perspiciatis, minima voluptatem! </p> </div> <div class="burger"> <img src="food/burger.jpg" alt="汉堡图片" width="270px"> </div> </div> </article> </section> </main>
内容的提问来源于stack exchange,提问作者Ahmad Alsamau
相关产品推荐
相关产品推荐

