网页制作 
首页 > 网页制作 > 浏览文章

详解flex布局下图片变形的解决方法

(编辑:jimmy 日期: 2024/10/1 浏览:3 次 )

flex布局是现在常用的一个布局方式,但是有时候也会导致出现一些小问题。本人在使用flex布局做一个左边头像,右边文字的时候,发现固定图片的宽度时,图片宽度仍然发生了变化。

下图是头像本应该是圆形的,但是被挤压变形了。

<div class="people">
	<img class="avatar" src="./avatar.jpg" alt="avatar">
	<div class="des ">
		<p>Tony</p>
		<p>没错,我就是你们的Tony老师,快来找我剪头发吧!</p>
	</div>
</div>
/* 父元素 */
.people {
	display: flex;
}
/* 头像 */
.avatar {
	width: 64px;
	height: 64px;
	border-radius: 32px;
}
/* 人物介绍 */
.des {
	margin-left: 24px;
}

详解flex布局下图片变形的解决方法

网上查找常用的办法是在 img 标签外再套一个 div

<div class="people">
	<div><img class="avatar" src="./avatar.jpg" alt="avatar"></div>
	<div class="des ">
		<p>Tony</p>
		<p>没错,我就是你们的Tony老师,快来找我剪头发吧!</p>
	</div>
</div>

还有一种更简单的方法是直接给头像的css添加 flex-shrink: 0 更为简单

/* 头像 */
/* flex-shrink 属性定义了项目的缩小比例,默认为1,即如果空间不足,该项目将缩小。 */
/* 如果某一个元素的 flex-shrink 属性为 0,其他项目都为 1,空间不足时,值为 0 的不缩小。 */
.avatar {
	flex-shrink: 0;
	width: 64px;
	height: 64px;
	border-radius: 32px;
}

详解flex布局下图片变形的解决方法

上一篇:使用Flex布局实现头部固定内容区域滚动的方法
下一篇:CSS3 input框的实现代码类似Google登录的动画效果
一句话新闻
一文看懂荣耀MagicBook Pro 16
荣耀猎人回归!七大亮点看懂不只是轻薄本,更是游戏本的MagicBook Pro 16.
人们对于笔记本电脑有一个固有印象:要么轻薄但性能一般,要么性能强劲但笨重臃肿。然而,今年荣耀新推出的MagicBook Pro 16刷新了人们的认知——发布会上,荣耀宣布猎人游戏本正式回归,称其继承了荣耀 HUNTER 基因,并自信地为其打出“轻薄本,更是游戏本”的口号。
众所周知,寻求轻薄本的用户普遍更看重便携性、外观造型、静谧性和打字办公等用机体验,而寻求游戏本的用户则普遍更看重硬件配置、性能释放等硬核指标。把两个看似难以相干的产品融合到一起,我们不禁对它产生了强烈的好奇:作为代表荣耀猎人游戏本的跨界新物种,它究竟做了哪些平衡以兼顾不同人群的各类需求呢?