写在最前:移动端中导航的网花样结构无处无在,宽高怎么设置相适应?米素怎么居中对齐?差别场景怎么选择代码更高效?巧妙使用margin、padding等基础属性,小小技巧可以解决许多烦恼!
首页导航结构(无间距)
<div class="e9b3-89fc-591a-6843 g-grid"> <div class="89fc-591a-6843-30b9 g-grid-item"> <div class="591a-6843-30b9-652a g-grid-imgWrap"> <img class="fb70-5cfc-88a9-3379 item-img" src="img/g1.png" /> </div> <p class="5cfc-88a9-3379-bc3b g-grid-label">汽车票船票</p> </div> <!-- 以下九个子米素结构相同省略 --> </div>
.g-grid { text-align: center; overflow: hidden; background: #fff; } .g-grid-item { position: relative; float: left; width: 20%; padding: 10px 0; text-align: center; } .g-grid-imgWrap { display: inline-block; width: 30%; height: 0; padding-bottom: 30%; } .g-grid-imgWrap img { width: 100%; } .g-grid-label { font-size: 12px; color: #333; }
①、父米素g-grid通过overflow: hidden确立BFC,使得整体高度从1酿成自适应。通常可使用clearfix来消灭浮动的副作用
.clearfix:after{ display: block; clear: both; content: ""; visibility: hidden; height: 0; } .clearfix{ zoom:1; }
②、子米素g-grid-item通过float: left属性浮动起来,这也是该方式最主要的属性。
③、移动端对照常见的一个需求是高度凭据宽度举行自适应。这个时刻可以使用到padding-bottom。当width和padding-bottom相等时就实现了宽高相等(注重要将height置为0),闻一知十,种种比例下也可以设置。
width: 30%; height: 0; padding-bottom: 30%;
引申:vh和vw是css引入视口的观点来取代显示器的物理尺寸,它们作为单米的时刻也可实现该效果,虽然现在兼容性逐步变好,然则Android4.4之前不支持是硬伤。
vw:1vw即是视口宽度的1%。
vh:1vh即是视口高度的1%。
height:1vw; width:1vw;
首页导航结构(有间距)
页面结构与Float结构相同
.g-grid { margin-right: -2%; padding: 10px 10px 0; font-size: 0; background: #fff; } .g-grid-item { position: relative; display: inline-block; width: 31.33%; padding-bottom: 31.33%; margin-right: 2%; margin-bottom: 10px; } .g-grid-imgWrap { position: absolute; top: 0; left: 0; right: 0; bottom: 20px; } .g-grid-imgWrap img { width: 100%; height: 100%; } .g-grid-label { position: absolute; bottom: 0; width: 100%; height: 20px; line-height: 20px; font-size: 12px; color: #333; text-align: center; }
①、g-grid-item设置display:inline-block结构经常会使得米素米素间莫名其妙泛起清闲。可以在写代码时使得米素和米素牢牢相连,但不太利便我们编写代码,IDE花样化之后也会自动离开。此处建议设置父米素g-grid的font-size属性为0就可以去掉清闲。
②、g-grid-item这些子米素之间需要距离时用到margin-right(或者margin-left),经常要处置最后一行设置为margin-right(或者margin-left)为0。有以下解决方式:
楼上的float结构也可以使用该方式去设置间隙
③、宽高若干不仅仅可以通过设置值来决议,该例子内里使用以下代码实现了width:100%,高度为父级高度减去20px,凭据场景差别来决议写法。
position: absolute; top: 0; left: 0; right: 0; bottom: 20px;
④、float结构和display:inline-block结构的水平居中通常使用text-align: center;,子米素在父米素里水平居中要求子米素display不为block
网格结构(无间距)
<div class="88a9-3379-bc3b-e2ca g-grid"> <div class="3379-bc3b-e2ca-6753 g-grid-item"> <img class="bc3b-e2ca-6753-ec44 item-img" src="img/g1.png" /> <p class="e2ca-6753-ec44-670b g-grid-label">汽车票船票</p> </div> <!-- 以下八个子米素结构相同省略 --> </div>
.g-grid { display: grid; grid-template-columns: repeat(3, 33.33%); grid-template-rows: repeat(3, 100px); background: #fff; } .g-grid-item { display: inline-grid; border-right: 1px solid #eee; border-top: 1px solid #eee; align-content: center justify-items: center; } .g-grid-item:nth-child(3n) { border-right: none; } .g-grid-item img { height: 30px; width: 30px; } .g-grid-label { font-size: 12px; color: #333; }
①、grid结构通过grid-template-columns和grid-template-rows来设置几列几行
②、g-grid-item通过设置align-content: center;来使得子米素都处于垂直居中,justify-items: center来使得子米素都处于水平居中
九宫格结构(有清闲)
页面结构与Grid结构相同请输入代码
.g-grid { display: flex; flex-wrap: wrap; } .g-grid-item { flex: 0 1 31.33%; margin: 0px 1% 10px; padding: 1.2rem; box-sizing: border-box; text-align: center; background: #eee; } .g-grid-item img { height: 30px; width: 30px; } .g-grid-label { font-size: 12px; color: #333; }
①、Flex结构通过flex-wrap: wrap;来举行换行,但当需要米素与米素之间存在间距时,不能使用justify-content: space-between;,削减一个米素会酿成下图:
以是该例子通过margin来设置间距。
②、.g-grid-item设置flex: 0 1 31.33%;意思是米素的原本巨细为父米素的31.33%,空间不足时该米素将缩小,存在剩余空间也不放大。
当该值设为flex: 1 1 31.33%;时,削减一个米素会酿成下图:
原文来自:https://segmentfault.com/a/1190000020047828
1.阿里云: 本站现在使用的是阿里云主机,平安/可靠/稳固。点击领取2000米代金券、领会最新阿里云产物的种种优惠流动点击进入
本文目录一览: 1、计算机专业毕业水平能达到黑客吗? 2、国内哪所二本学校的计算机专业最好? 3、黑客是学什么专业 4、北京的二本学校中哪个计算机专业比较好 5、河北经贸大学计算机专业...
户口迁移但是一件大事儿,每一个关键点必须慎重筹划才行。在由于婚姻生活开展户籍前夜的状况中,有的夫妇是同一个县区,有的彻底是不一样的省份,这类状况下,相匹配的户籍申请办理步骤也一些差别。完婚户口迁移申请...
如今俨然是一个互联网时代,而互联网也催生了今天这个全民网购时代。网购符合当前社会的快节奏生活方式,忙碌的上班族们很难有时间在街上的商店挑挑选选,所以更加愿意选择网购这种便捷方式。正是基于这样广阔的消费...
汽车维修是汽车维护和修理的泛称。就是对出现故障的汽车通过技术手段排查,找出故障原因,并采取一定措施使其排除故障并恢复达到一定的性能和安全标准。汽车维修包括汽车大修和汽车小修,汽车大修是指用修理或更...
本文导读目录: 1、中美大战黑客的起因是什么? 2、15岁上浙大、22岁获世界冠军的天才黑客疑似被开除,究竟怎么回事? 3、著名的黑客事件都有哪些 4、我的股票账户里的现金怎么突然少了...
微信聊天记录查看器是指能够在电脑上解密查看手机上的微信记录的软件,我们只需要将苹果手机或安卓手机连接到电脑上,然后借助该软件即可解密微信聊天记录数据库文件。好友信息,群聊信息,聊天时间,聊天内容,均可...