CSS弹性盒子中弹性子元素文本超出弹性子元素宽或高后导致撑开弹性子元素原本宽或高的解决方法

这篇具有很好参考价值的文章主要介绍了CSS弹性盒子中弹性子元素文本超出弹性子元素宽或高后导致撑开弹性子元素原本宽或高的解决方法。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

当使用弹性布局时,设置父容器为弹性容器后,弹性子元素的文本内容超出宽或高后会撑开弹性子元素的原本应该显示的宽高,溢出父容器,只要设置弹性子元素的宽或高(由父容器弹性排列方向决定)的属性值为0即可解决

设置父容器弹性排列方向为横向从左到右排列,未设置子元素宽属性值

<!DOCTYPE html>
<html lang="">
  <head>
    <meta charset="utf-8">
	<style>
	#box{
		width:500px;
		height:500px;
		background-color:#2196f31a;
		display:flex;/*设置父容器为弹性盒子*/
		flex-direction:row;/*设置父容器中弹性子元素的排列方向:从左到右*/
	}
	
	.box-1{
		flex:1;/*设置弹性子元素在弹性排列方向的占比*/
		height:100px;
		background-color:#FFEB3B;
	}
	.box-2{
		flex:2;/*设置弹性子元素在弹性排列方向的占比*/
		height:100px;
		background-color:#FFC107;
	}
	
	</style>
  </head>
  <body>
    <div id="box">
		<div class="box-1">
		11111111111111111111111111111111111111111
		</div>
		<div class="box-2">
		22222222222222222222222222222222222222222
		</div>
	</div>

   
  </body>
</html>

渲染样式

CSS弹性盒子中弹性子元素文本超出弹性子元素宽或高后导致撑开弹性子元素原本宽或高的解决方法,前端,css,css3,前端,html

设置弹性子元素的宽为0解决问题

<!DOCTYPE html>
<html lang="">
  <head>
    <meta charset="utf-8">
	<style>
	#box{
		width:500px;
		height:500px;
		background-color:#2196f31a;
		display:flex;/*设置父容器为弹性盒子*/
		flex-direction:row;/*设置父容器中弹性子元素的排列方向:从左到右*/
	}
	
	.box-1{
		flex:1;/*设置弹性子元素在弹性排列方向的占比*/
		width:0;/*设置排列方向对应的宽或高的值为0,防止文本溢出导致撑开弹性子元素的原本设定宽或高*/
		height:100px;
		background-color:#FFEB3B;
	}
	.box-2{
		flex:2;/*设置弹性子元素在弹性排列方向的占比*/
		width:0;/*设置排列方向对应的宽或高的值为0,防止文本溢出导致撑开弹性子元素的原本设定宽或高*/
		height:100px;
		background-color:#FFC107;
	}
	
	</style>
  </head>
  <body>
    <div id="box">
		<div class="box-1">
		11111111111111111111111111111111111111111
		</div>
		<div class="box-2">
		22222222222222222222222222222222222222222
		</div>
	</div>

   
  </body>
</html>

渲染样式

CSS弹性盒子中弹性子元素文本超出弹性子元素宽或高后导致撑开弹性子元素原本宽或高的解决方法,前端,css,css3,前端,html
文本溢出部分换行或者隐藏即可

设置父容器为弹性盒子且排列方向为竖直从上到下时,未设置高度为0

<!DOCTYPE html>
<html lang="">
  <head>
    <meta charset="utf-8">
	<style>
	#box{
		width:500px;
		height:500px;
		background-color:#2196f31a;
		display:flex;/*设置父容器为弹性盒子*/
		flex-direction:column;/*设置父容器中弹性子元素的排列方向:从上到下*/
	}
	
	.box-1{
		flex:1;/*设置弹性子元素在弹性排列方向的占比*/
		width:100px;
		writing-mode: vertical-lr;/*文本纵向排列*/
		background-color:#FFEB3B;
	}
	.box-2{
		flex:2;/*设置弹性子元素在弹性排列方向的占比*/
		width:100px;
		writing-mode: vertical-lr;/*文本纵向排列*/
		background-color:#FFC107;
	}
	
	</style>
  </head>
  <body>
    <div id="box">
		<div class="box-1">
		11111111111111111111111111111111111111111
		</div>
		<div class="box-2">
		22222222222222222222222222222222222222222
		</div>
	</div>

   
  </body>
</html>

渲染样式

CSS弹性盒子中弹性子元素文本超出弹性子元素宽或高后导致撑开弹性子元素原本宽或高的解决方法,前端,css,css3,前端,html

设置高度为0

<!DOCTYPE html>
<html lang="">
  <head>
    <meta charset="utf-8">
	<style>
	#box{
		width:500px;
		height:500px;
		background-color:#2196f31a;
		display:flex;/*设置父容器为弹性盒子*/
		flex-direction:column;/*设置父容器中弹性子元素的排列方向:从上到下*/
	}
	
	.box-1{
		flex:1;/*设置弹性子元素在弹性排列方向的占比*/
		width:100px;
		height:0;/*设置弹性子元素高度为0,防止文本溢出导致撑开弹性子元素原本设定的高度*/
		writing-mode: vertical-lr;/*文本纵向排列*/
		background-color:#FFEB3B;
	}
	.box-2{
		flex:2;/*设置弹性子元素在弹性排列方向的占比*/
		width:100px;
		height:0;/*设置弹性子元素高度为0,防止文本溢出导致撑开弹性子元素原本设定的高度*/
		writing-mode: vertical-lr;/*文本纵向排列*/
		background-color:#FFC107;
	}
	
	</style>
  </head>
  <body>
    <div id="box">
		<div class="box-1">
		11111111111111111111111111111111111111111
		</div>
		<div class="box-2">
		22222222222222222222222222222222222222222
		</div>
	</div>

   
  </body>
</html>

渲染样式

CSS弹性盒子中弹性子元素文本超出弹性子元素宽或高后导致撑开弹性子元素原本宽或高的解决方法,前端,css,css3,前端,html
问题解决文章来源地址https://www.toymoban.com/news/detail-519328.html

到了这里,关于CSS弹性盒子中弹性子元素文本超出弹性子元素宽或高后导致撑开弹性子元素原本宽或高的解决方法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包