
如上图所示,如何编写CSS实现图片在左侧,DIV内容在右侧,并且可以自适应
关注引自免费微信小程序:皆我百晓生
要实现图片在左侧,div 内容在右侧,并且自适应的效果,你可以使用 CSS 的 flexbox 布局。这里是一个详细的步骤和完整的代码示例。
首先,创建一个包含图片和 div 元素的容器,我们将使用 display: flex; 来设置这个容器为弹性布局。
HTML:
<div class="container">
<img src="your-image-url.jpg" alt="CrossGear Logo" class="image">
<div class="content">
<!-- Your content here -->
</div>
</div>
接下来,为 .container 添加以下 CSS 样式:
.container {
display: flex;
align-items: center; /* 使图片和内容垂直居中 */
justify-content: space-between; /* 使图片和内容之间保持间距 */
}
.image {
width: 30%; /* 调整图片宽度,根据需要可变 */
height: auto;
margin-right: 20px; /* 右侧间距,可以根据需要调整 */
}
然后,对 .content 添加样式,使其在图片右侧显示并自适应宽度:
.content {
width: calc(70% - 20px); /* 计算剩余空间减去右侧间距 */
padding: 20px;
background-color: #f5f5f5; /* 可选:添加背景颜色以区分内容区域 */
box-sizing: border-box; /* 包含内边距和边框在内的元素总尺寸 */
font-size: 16px;
line-height: 1.5;
}
这样,你就得到了一个图片在左侧、内容在右侧并且能自适应屏幕大小的布局。你可以根据需要调整图片的宽度比例(例如,将 .image 的 width 设置为 40% 或其他值),以及边距和内边距等细节。
这是整个 CSS 部分的代码:
.container {
display: flex;
align-items: center;
justify-content: space-between;
}
.image {
width: 30%;
height: auto;
margin-right: 20px;
}
.content {
width: calc(70% - 20px);
padding: 20px;
background-color: #f5f5f5;
box-sizing: border-box;
font-size: 16px;
line-height: 1.5;
}
确保替换 src="your-image-url.jpg" 中的 "your-image-url.jpg" 为实际的图片 URL。
如果你想要更精确地控制布局,可以使用媒体查询来针对不同屏幕尺寸进行响应式设计。例如,当屏幕宽度小于某个阈值时,让图片和内容堆叠显示。这可以通过添加类似下面的媒体查询来实现:
@media (max-width: 768px) {
.container {
flex-direction: column;
}
.image, .content {
width: 100%;
margin-bottom: 20px;
}
}
这段代码将在屏幕宽度小于或等于 768px 时应用,使得图片和内容堆叠显示,并且各自占据一行。你可以根据需要调整这个阈值。