电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

flex布局下兩端對齊,不滿左對齊

瀏覽:227日期:2022-06-03 08:20:15

彈性布局多列換行居左布局

解決方案一

問題情境:

在flex布局下,多行排列,如何讓flex布局最后一行沒有排滿時,向左對齊排列且與上面的行間距相同。

實現效果:

<!DOCTYPE html><html>	<head>		<meta charset="utf-8">		<title></title>	</head>	<style type="text/css">		li {			list-style: none;		}		.List {			width: 100%;			box-sizing: border-box;			display: flex;			justify-content: space-between;			flex-wrap: wrap;			padding: 10px;		}		.List:after{			content: "";			flex: auto;		}		.item {			/* 寬度是固定好的 */			width: 220px;			height: 60px;			background-color: azure;			margin-bottom: 10px;			border: 1px solid red;			/*這個數值需要自己去調*/			margin-right: 17px;		}		.item:nth-child(5n){			/* 盡量讓item在list中居中,兩邊都沒有margin */			margin-right: 0;		}			</style>	<body>		<div id="">			<ul>				<li></li>				<li></li>				<li></li>				<li></li>				<li></li>				<li></li>				<li></li>				<li></li>				<li></li>				<li></li>				<li></li>				<li></li>				<li></li>							</ul>		</div>	</body></html>

重要代碼:要加after以及每個item的margin-right

.List:after{		content: "";		flex: auto;	}

解決方案二

在用flex布局的時候遇到了下面這種問題,這是我的結構

 <div>      <div v-for="num in 8" :key="num"></div>  </div>
 .videoMain{display: flex; flex-wrap: wrap;justify-content: space-between;align-content: flex-start;height: 100%;overflow-y: auto;.video{    width: 342px;    height: 210px;    margin-bottom:10px;    background-color: cyan;}     }

當我使用 justify-content:space-between 或者 space-around 的時候頁面效果是這樣的

很明顯最后一行的三個元素我想讓他左對齊,看到網上有說給父級元素加上偽類,我試了試

.videoMain{display: flex; flex-wrap: wrap;justify-content: space-between;align-content: flex-start;width: 100%;height: 100%;overflow-y: auto;.video{    width: 342px;    height: 210px;    margin-bottom:10px;    background-color: cyan;}i{    width: 342px;}     }     .videoMain::after{content: "";flex: auto; // 或者1     }

最后效果是這樣的,最后一行都連上了(第一張圖),也沒有達到我想要的左對齊的效果,寫margin-right之后和上面的又不對齊了(第二張圖),不知道為什么別人說的就可以,有知道的也可以評論告訴我。

個人的解決方案

加了3個i標簽,并把它的寬度設置的和.video的寬度一樣,沒有高度,這樣的做的目的是最后一行差的給它補上,所以它會自動對齊,又因為沒有寫高度,所以頁面中什么也不會顯示

<div>  <div v-for="num in 8" :key="num"></div>    <i v-for="num in 3" :key="num"></i></div>
 i{    width: 342px; }

這樣就實現了底部和上面對齊的效果啦!

解釋一下為什么我加了三個 i 標簽

因為我的滿行最多是五個div,底部多出一個div的時候,效果是沒有影響的,當底部多出兩個div的時候,顯示在最前面和最后面的位置,這個不是我預期的效果,所以需要添加三個 i 標簽來補齊,當底部是三個div的時候,同一行后面跟著兩個 i 標簽,下一行又有一個 i 標簽,但是由于 i 標簽沒有高度,所以就和沒有一樣,視覺上就實現了我們想要的效果,無論頁面的寬度怎么變,效果是不變的。

解決方案三

最近uni-app開發(fā)出現一個頁面效果:多行三列左右對齊,超出換行左對齊,網上查了很多都沒有能有效解決這個問題,而且這個在手機app上屬于比較特殊的情況,UI效果:

我這里就講自己如何解決這個問題:
首先一個問題考慮到最后一行不滿的情況,如果使用左右兩端對齊,很明顯最后一行,如果是兩列呢?例如這個:

此時,就不滿足左對齊了!

這個情況是會遇到的。比如,我們用v-for循環(huán)渲染內容,后臺隨機增加標簽內容,就無法避免出現上面兩端對齊的問題了!

所以考慮到特殊情況作了如下改動,上代碼:

<view>	<view>		儀表儀器	</view>	<view>		儀表儀器	</view>	<view>		儀表儀器	</view>	<view>		儀表儀器	</view>	<view>		儀表儀器	</view>	<view>		儀表儀器	</view></view>
.itemBox {	width: auto;	display: flex;	/* 兩端對齊 */	justify-content: space-between;	flex-wrap: wrap;	.item {		width: 32.5%;		height: 60rpx;		text-align: center;		line-height: 60rpx;		background-color: #F2F2F2;		font-size: 32rpx;		font-family: PingFang SC;		font-weight: 400;		margin-top: 20rpx;	}		/* 如果最后一行是3個元素 */	.item:last-child:nth-child(3n - 1) {	    margin-right: calc(32.5% + 3% / 3);	}	/* 如果最后一行是2個元素 */	.item:last-child:nth-child(3n - 2) {	    margin-right: calc(65% + 6% / 3);	}}

最后效果:

很完美的解決了最后一行不滿一列、兩列不是左對齊的情況!

以上就是flex布局下兩端對齊,不滿左對齊的詳細內容,更多關于flex布局下兩端對齊,不滿左對齊的資料請關注其它相關文章!

標簽: CSS HTML
主站蜘蛛池模板: 植筋胶-粘钢胶-碳纤维布-碳纤维板-环氧砂浆-加固材料生产厂家-上海巧力建筑科技有限公司 | 专业生物有机肥造粒机,粉状有机肥生产线,槽式翻堆机厂家-郑州华之强重工科技有限公司 | 翅片管换热器「型号全」_厂家-淄博鑫科环保 | 联系我们老街华纳娱乐公司官网19989979996(客服) | 气体热式流量计-定量控制流量计(空气流量计厂家)-湖北南控仪表科技有限公司 | 北京翻译公司_同传翻译_字幕翻译_合同翻译_英语陪同翻译_影视翻译_翻译盖章-译铭信息 | 气动绞车,山东气动绞车,气动绞车厂家-烟台博海石油机械有限公司 气动隔膜泵厂家-温州永嘉定远泵阀有限公司 | 低气压试验箱_高低温低气压试验箱_低气压实验箱 |林频试验设备品牌 | 广州中央空调回收,二手中央空调回收,旧空调回收,制冷设备回收,冷气机组回收公司-广州益夫制冷设备回收公司 | 胶原检测试剂盒,弹性蛋白检测试剂盒,类克ELISA试剂盒,阿达木单抗ELISA试剂盒-北京群晓科苑生物技术有限公司 | crm客户关系管理系统,销售管理系统,crm系统,在线crm,移动crm系统 - 爱客crm | 筛分机|振动筛分机|气流筛分机|筛分机厂家-新乡市大汉振动机械有限公司 | 新能源汽车电池软连接,铜铝复合膜柔性连接,电力母排-容发智能科技(无锡)有限公司 | 移动机器人产业联盟官网| 铝箔-铝板-花纹铝板-铝型材-铝棒管-上海百亚金属材料有限公司 | 混合生育酚_醋酸生育酚粉_琥珀酸生育酚-山东新元素生物科技 | 都江堰招聘网-都江堰人才网 都江堰人事人才网 都江堰人才招聘网 邢台人才网_邢台招聘网_邢台123招聘【智达人才网】 | 定量包装秤,吨袋包装称,伸缩溜管,全自动包装秤,码垛机器人,无锡市邦尧机械工程有限公司 | 阳光模拟试验箱_高低温试验箱_高低温冲击试验箱_快速温变试验箱|东莞市赛思检测设备有限公司 | 超声波反应釜【百科】-以马内利仪器| 齿轮减速电机一体机_蜗轮蜗杆减速马达-德国BOSERL齿轮减速机带电机生产厂家 | 质检报告_CE认证_FCC认证_SRRC认证_PSE认证_第三方检测机构-深圳市环测威检测技术有限公司 | 广州展览制作工厂—[优简]直营展台制作工厂_展会搭建资质齐全 | 天津中都白癜风医院_天津白癜风医院_天津治疗白癜风 | 云南成人高考_云南成考网| 外贮压-柜式-悬挂式-七氟丙烷-灭火器-灭火系统-药剂-价格-厂家-IG541-混合气体-贮压-非贮压-超细干粉-自动-灭火装置-气体灭火设备-探火管灭火厂家-东莞汇建消防科技有限公司 | 青岛侦探调查_青岛侦探事务所_青岛调查事务所_青岛婚外情取证-青岛狄仁杰国际侦探公司 | 机械立体车库租赁_立体停车设备出租_智能停车场厂家_春华起重 | VI设计-LOGO设计公司-品牌设计公司-包装设计公司-导视设计-杭州易象设计 | (中山|佛山|江门)环氧地坪漆,停车场地板漆,车库地板漆,聚氨酯地板漆-中山永旺地坪漆厂家 | nalgene洗瓶,nalgene量筒,nalgene窄口瓶,nalgene放水口大瓶,浙江省nalgene代理-杭州雷琪实验器材有限公司 | 诺冠气动元件,诺冠电磁阀,海隆防爆阀,norgren气缸-山东锦隆自动化科技有限公司 | 土壤墒情监测站_土壤墒情监测仪_土壤墒情监测系统_管式土壤墒情站-山东风途物联网 | 工业车间焊接-整体|集中除尘设备-激光|等离子切割机配套除尘-粉尘烟尘净化治理厂家-山东美蓝环保科技有限公司 | 立式壁挂广告机厂家-红外电容触摸一体机价格-华邦瀛 | 网站建设,北京网站建设,北京网站建设公司,网站系统开发,北京网站制作公司,响应式网站,做网站公司,海淀做网站,朝阳做网站,昌平做网站,建站公司 | 东莞动力锂电池保护板_BMS智能软件保护板_锂电池主动均衡保护板-东莞市倡芯电子科技有限公司 | 成都热收缩包装机_袖口式膜包机_高速塑封机价格_全自动封切机器_大型套膜机厂家 | 电气控制系统集成商-PLC控制柜变频控制柜-非标自动化定制-电气控制柜成套-NIDEC CT变频器-威肯自动化控制 | 首页|专注深圳注册公司,代理记账报税,注册商标代理,工商变更,企业400电话等企业一站式服务-慧用心 | 优秀的临床医学知识库,临床知识库,医疗知识库,满足电子病历四级要求,免费试用 |