CSS实现左边固定宽右边自适应布局怎样做
Admin 2022-11-30 群英技术资讯 792 次浏览
本篇内容介绍了“CSS实现左边固定宽右边自适应布局怎样做”的有关知识,在实际项目的操作过程或是学习过程中,不少人都会遇到这样的问题,接下来就让小编带大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!这是一道面试题,你有多少种办法呢?
这里我们假设左边名为 left,宽度为 200 px,右边名为 right。即默认
.left {
width: 200px;
}
我的理解分四大类
flex 布局
grid 布局
绝对定位
双子元素 absolute
left:200px + width: 100%左元素 absolute + 右元素 margin-left
margin-left: 200px + width: 100%float 浮动
左元素左浮动,右元素不动
左元素左浮动,右元素右浮动
width: calc(100% - 200px))需要一个父元素做 flex 布局,且需要给它一个高度(撑开容器)
.father {
display: flex;
height: 200px;
}
.right {
flex: 1;
}
高级的布局方式,子元素不需要设置宽度,单单设置父元素属性即可。
.grid {
display: grid;
grid-template-columns: 200px 100%;
height: 200px;
}
需要给子元素设置宽高,不然撑不起来。右元素设置left: 200px
.father {
position: relative;
height: 200px;
}
.left {
position: absolute;
height: 200px;
}
.right {
position: absolute;
left: 200px;
height: 200px;
width: 100%;
}
.father {
position: relative;
height: 200px;
}
.left {
position: absolute;
width: 200px;
height: 200px;
}
.right {
width: 100%;
height: 200px;
margin-left: 200px;
}
前两种都需要有个父元素,但浮动不需要
左边浮动,下一个元素独占位置,并排一行
同样,需要设置高度,子元素才能撑开
.left {
float: left;
height: 200px;
}
.right {
height: 200px;
}
浮动不需要父元素,浮动就区别于正常文档流
我的理解是正常文档流是二维层面,而浮动相当于成了三维,区别于 Z 轴
右边元素有浮动不够,还需要设置宽度
.left {
float: left;
height: 200px;
}
.right {
float: right;
height: 200px;
width: calc(100% - 200px);
}
只要是 float 实现此功能的,都不需要父元素,以及自身都需要设置高度
简单来说,实现布局最好的方式是 flex,简单兼容现代浏览器和机型。当然,我是因为还没有学 grid(但 grid 要记得参数比较多)。绝对定位和浮动各有优缺点
| 各大方法 | 优缺点 | 需要什么 |
|---|---|---|
| flex | 布局简单 | 需要父元素、高度。子项 flex:1 |
| grid | 布局最简单,但兼容性更现代 | 只需要父元素设置属性就好 |
| 绝对定位 | 兼容性更高 | 需要父元素做相对定位、高度 |
| 浮动 | 兼容性更高 | 不需要父元素,子项都需要宽高 |
float 区别于其他三种,不需要父元素做容器
grid 区别于其他三种,不需要设置子元素(左元素的)宽
绝对定位区别于其他三种,它的方法不仅要父元素有高,其子元素也要有高
flex 最简单
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
实现的原来就是:在一个宽高为0像素的块状元素中设置border属性,例如.box{width:0px;height:0;border-bottom:50px#F00solid;border-left:50px#03Fsolid;border-right:50px#F90solid;border-top:50px#6C0solid;}在浏览器中的显示如图:这样就有上下左右四个三角形了,再把除了要用的三角外的其他3个三角(border)颜色设置 ...
css3实现了对元素执行2D平面变换,以及视觉上的3D空间变换,2D变换平时可能用的较多,3D效果也能锦上添花,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
这篇文章主要介绍了CCS中的margin:top塌陷问题,本文通过实例截图给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
本篇文章给大家带来关于css中动画的相关知识,其中包括什么是动画,动画的调用以及多关键帧动画应该怎样实现,希望对你有帮助。
今天给大家分享用CSS实现一个比较酷炫有趣的效果,就是css鼠标移上图片折叠效果,实现效果、思路以及实现代码如下,对新手学习CSS动画效果的实现有一定的帮助,感兴趣的朋友可以了解看看。
成为群英会员,开启智能安全云计算之旅
立即注册关注或联系群英网络
7x24小时售前:400-678-4567
7x24小时售后:0668-2555666
24小时QQ客服
群英微信公众号
CNNIC域名投诉举报处理平台
服务电话:010-58813000
服务邮箱:service@cnnic.cn
投诉与建议:0668-2555555
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008