margin和flex布局

博客作者遇到了地图与折线图显示重叠的问题,通过深入理解margin属性,发现是折线图宽度设置不当导致。作者转向研究Flex布局,了解其基本概念,如主轴、交叉轴、flex-direction、flex-wrap等,并成功通过调整容器的flex属性解决了布局冲突。现在,地图和折线图可以和谐共存,且布局更具弹性。
摘要由CSDN通过智能技术生成

问题:做地图点击查询按钮,折线图的宽度也逐渐变大。

貌似是margin的问题,好像是margin的宽度在变大,把地图和折线图的宽度挤压

 仔细了解下margin

margin为外边距,用来控制元素周围空间的间隔,从视觉上达到相互隔开的目的。

padding为内边距

找到问题了,是我把折线图的宽度width:105%,为了让折线图的宽度大一点。但是这种方式显然不可取。

找到地图的样式

 flex原来为2,改为1,达到想要的效果

2.

(1)了解flex。flex为flexible box,即弹性布局。用来为盒状模型提供最大的灵活性。

任何一个容器都可以指定为flex布局

.box{
display:flex
}

 行内元素也可使用flex布局

.box{
display:inline-flex
}

 webkit内核的浏览器,必须加上-wekit 前缀

.box{
display:-webkit-flex /Safari/
diaplay:flex
}

 注意:设为flex布局后,子元素的float,clear和vertical-align属性会失效

(2)基本概念

使用flex布局的元素,称为flex容器(flex container)。它所有子元素成为容器的成员,称为flex项目(flex item)

容器默认存在两根轴:水平主轴(main axis)和垂直的交叉轴(cross axis)。主轴的开始位置叫做main start,结束位置叫做main end .交叉轴的开始位置叫做cross start ,结束位置 叫cross end.

项目默认按主轴排列。单个项目占据的主轴空间叫做main size.占据的交叉轴空间叫做cross size

 (3)容器的属性

flex-direction flex-wrap flex-flow justify-content align-items align-content

 (1)flex-derection 属性决定主轴的方向,即项目的排列方向

.box{
flex-direction:row|row-reverse|column|column-reverse
}

row:水平方向,起点在左端

row-reverse:水平方向,起点在右端

column:垂直方向,起点在上

column-reverse:垂直方向,起点在下

   (2)flex-wrap属性

flex-wrap属性定义,如果一条轴线排列不下,如何换行。

.box{
flex-wrap:nowrap|wrap|wrap-reverse
}

 nowrap:不换行

wrap:换行,第一行在上方

wrap-reverse:换行,第一行在下方

(3) flex-flow

flex-flow属性是flex-direction和属性flex-wrap属性的简写,默认值为row nowrap

.box{
flex-flow:<flex-direction>||<flex-wrap>
}

 (4)justify-content

justify-content属性定义了项目在主轴的对齐方式

.box{
justify-content:flex-start|flex-end|center|space-between|space-around
}

  • flex-start(默认值):左对齐
  • flex-end:右对齐
  • center: 居中
  • space-between:两端对齐,项目之间的间隔都相等。
  • space-around:每个项目两侧的间隔相等。所以,项目之间的间隔比项目与边框的间隔大一倍。

(5) align-items属性定义项目在交叉轴上如何对齐

(6)align-content属性定义了多根轴线的对齐方式。如果项目只有一根轴线,该属性不起作用

3.项目的属性

  • order属性定义项目的排列顺序。数值越小,排列越靠前,默认为0。
  • .item {
      order: <integer>;
    }
  • flex-grow属性定义项目的放大比例,默认为0,即如果存在剩余空间,也不放大
  • flex-shrink属性定义了项目的缩小比例,默认为1,即如果空间不足,该项目将缩小。
  • flex-basis属性定义了在分配多余空间之前,项目占据的主轴空间(main size)。浏览器根据这个属性,计算主轴是否有多余空间。它的默认值为auto,即项目的本来大小。
  • flex属性是flex-growflex-shrink 和 flex-basis的简写,默认值为0 1 auto。后两个属性可选
  • align-self属性允许单个项目有与其他项目不一样的对齐方式,可覆盖align-items属性。默认值为auto,表示继承父元素的align-items属性,如果没有父元素,则等同于stretch
m0_49471668
关注 关注
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
详解flex实现左右布局中按钮溢出隐藏效果
09-22
通过使用Flex布局,我们可以轻松地调整元素的大小和位置,以适应不同屏幕尺寸和设备。 在左右布局中,通常左侧元素的宽度是自适应的,而右侧元素的宽度是固定的。对于按钮溢出隐藏,我们可以利用`text-overflow: ...
CSS 属性篇(四):Flex弹性盒子
weixin_33762321的博客
02-22 199
一、Flex介绍 FlexFlexible Box 的缩写,意为"弹性布局",用来为盒状模型提供最大的灵活性。 任何一个容器都可以指定为 Flex 布局: .box{ display: flex; } 复制代码行内元素也可以使用 Flex 布局: .box{ display: inline-flex; } 复制代码Webkit 内核的浏览器,必须加上-webkit前缀: .box{ ...
flex + margin 妙用
一只路过的小码农
12-27 1267
利用flex + margin 巧用
flex+margin打开你的新大陆
qq_50885646的博客
11-23 172
如果我们要想实现一个元素水平垂直居中,以前是这样做的给父元素设置display:flex,justify-content:center,aligin-content:center。在弹性盒子里面设置margin:aoto的意思是吃掉元素剩余的空间。假设设置margin-left:aoto就是吃掉它左边的剩余空间,同理其它边也是一样。大家在最初学习CSS的时候想必对flex,margin已经很熟悉了,但是flex+margin能给你意想不到的结果,它能大大简化我们的布局。
前端 CSS 经典:flex + margin 布局
最新发布
weixin_64684095的博客
06-21 377
如今我们布局大多时候都是用的 flex 布局,但是有时我们也可以使用 margin 小技巧去完成布局。在弹性盒中当我们把 margin 某一个方向上设置为 auto,他的含义是用 margin 吃掉这个方向的剩余空间。
flex弹性布局
m0_72741512的博客
08-01 331
flex,弹性布局
flex布局布局篇
05-08
- Flex项目可以使用上述列出的flexbox相关属性来进一步控制布局和对齐方式。 - Flex布局的兼容性很好,主流浏览器大多支持,但某些旧版本的浏览器需要添加特定的前缀,如`-webkit-`。 #### CSS盒子模型 - CSS盒子...
css3 flex布局实现平均分配元素的示例代码
11-20
`、`flex-wrap`、`flex` 属性以及 `justify-content` 和 `align-items` 等属性,为开发者提供了灵活的方式来控制元素的布局和分配,实现各种复杂的设计需求。在以上示例中,我们看到了如何利用这些属性实现元素的...
flexweb布局
08-10
Flex布局中,通过设置元素的margin为auto,可以实现自动分配空间的功能,比如水平居中或垂直居中。 6. 顺序 默认情况下,Flex项目会按照它们在HTML中的顺序进行显示。但通过flex-order属性,我们可以改变这个...
CSS flex布局最后一行列表左对齐的N种方法(小结)
12-28
引用张鑫旭的一篇文章分享给大家,如果你想进行修改进入链接点到对应的图片生成的链接进入,方可修改。 问题描述 ... <div class=list></div> <div class=list></div> <div class=list></div> ...
元素的垂直居中布局 (补充探索 flex 上下文自动 margin)
ximingx
02-15 1226
元素的垂直居中布局 (补充探索 flex 上下文自动 margin)
flex布局 (解决了margin传递、重叠(叠加)问题)
qq_37672347的博客
08-23 1万+
Flex布局(伸缩布局盒模型)是CSS3提出的一种新的布局方案,可以简便、完整、响应式地实现各种页面布局。 任何一个容器都可以指定为Flex布局。 .box { display: flex; } 行内元素也可以使用Flex布局。 .box { display: inline-flex; } 最新版本,使用display:flex或者display:inline-flex ...
Flex布局+margin 如何实现列表布局
qq_63605379的博客
10-28 194
实现列表布局
前端开发攻略---利用Flexbox和Margin实现智能布局:如何巧妙分配剩余空间,让你的网页设计更上一层楼?
nibabaoo的博客
04-09 491
利用Flexbox和Margin实现智能布局:如何巧妙分配剩余空间,让你的网页设计更上一层楼?
Flex布局
sumatray的博客
09-29 831
Flex(Flexible Box) ----- 弹性布局容器(Flex Container)元素项(Flex Item)水平轴,横轴,主轴(main axis)垂直轴,纵轴,交叉轴(cross axis)
flex+margin布局方法
Clover ‘s Blog
06-03 276
方式:【具体代码1】
flex布局中巧用margin负值
weixin_73226138的博客
04-02 406
flex布局中如果每行展示4个盒子,左右两侧靠边,中间间距相同,可以选择的方法有很多,最容易想到的就是space-between,但是这种情况下需要给4个子盒子宽度,那么就不利于盒子封装,例如有时候可能一行是3个、有时候4个、或者5个展示位的时候,就需要重新写宽度,如果使用margin负值,就能解决这个问题。这时,仅grandpa盒子有宽度,其他盒子的宽度都可以自动设置,我们只需要确定每行需要几个盒子,如果每行4个盒子则设置son的宽度为25%,每行为5个盒子则设置son的宽度为20%,以此类推。
Flex 布局:space-between 时左右项目间添加margin,项目尺寸固定,容器尺寸不固定,项目个数不固定
JCM_ZZ的博客
02-13 619
效果:
CSS - display flex 弹性布局实现一行仅显示 2 个,每行显示指定个数(设置 space-between / space-around 超出自动换行)详细示例代码
热门推荐
王佳斌
02-14 2万+
display flex css 一行显示两个,css弹性布局设置每行显示指定个数,css3 display: grid;弹性布局一行固定几个,列设置flex固定一行显示2个,CSS控制一行显示两个,css弹性布局设置每行显示指定个数,[CSS] 单列定宽的两列弹性布局,这个css是控制只有2个div在一行上么,css弹性布局+自动换行,flex布局 一行显示两个同宽、高的盒子 并 可以换行,flex布局每行显示固定个数,列设置flex固定一行显示2个,css - flex布局如何每行固定数量显示,CSS3
flex 布局 间隔
04-18
Flex布局是一种用于网页布局的CSS模块,它提供了一种灵活的方式来排列和对齐元素。在Flex布局中,父容器被称为Flex容器,而子元素被称为Flex项目。 Flex布局中的间隔可以通过以下几种方式实现: 1. 使用`justify-...
写文章

热门文章

  • cssBootstrap栅格布局的四种大小xs,sm,md,lg,xl 22482
  • element的icon改变颜色 9296
  • flex布局 一行显示两个同宽、高的盒子 并 可以换行 8178
  • for循环三种跳出循环的方法(retrun、continue、break) 7507
  • vue element 日期范围选择器限制只能选今天之前的时间,或者只能选今天之后的时间 5329

分类专栏

  • 教资备考 1篇
  • 正则 1篇
  • js 45篇
  • 面试题 54篇
  • react 19篇
  • git 3篇
  • css 7篇
  • websocket 1篇
  • taro 6篇
  • css预处理器 3篇
  • flex 1篇
  • es6 3篇
  • vue 51篇
  • element ui 42篇
  • webpack 2篇
  • 报错 7篇
  • Java 1篇
  • 百度地图 4篇

最新评论

  • 让折线图的x轴显示为想要的内容,不均匀显示

    Erwachen: 我也遇到了同样的问题,请问您解决了吗,可以分享一下吗?

  • Unity学习

    Joy_Garfield: 我按住鼠标右键,再按wsda没用啊,这是为什么

  • 【Echarts】自定义提示框tooltip样式,结合vue在自定义提示框中实现选择器和按钮事件

    普通网友: 大佬的文章写的太精辟了 让我深刻了解了这篇文章的精髓 谢谢大佬分享,希望继续创作优质博文。【我也写了一些相关领域的文章,希望能够得到博主的指导,共同进步!】

  • 子元素使用position:fixed,导致他的宽度不能和父元素保持一致的解决方案

    星辰大海_enoch: 感谢,有一些效果,左边没问题,但是右边还是拽不回来,我再研究一下。表情包

  • 子元素使用position:fixed,导致他的宽度不能和父元素保持一致的解决方案

    Tiomt: 可以修改父元素或者其他祖先元素的transform、perspective、filter 或 backdrop-filter 属性,只要值不为none,fixed定位就不再会相对于视口,而是相对于设置的那个元素

大家在看

  • gitee put出现报错git did not exit cleanly (exit code 128) (21282 ms @ 2022/4/18 16:09:03)解决方案 89
  • 数据集-目标检测系列-摩托车检测数据集 motorcycle >> DataBall
  • 基于ssm+vue订餐app(开题报告+程序+论文+java) 819
  • 《动手学深度学习》笔记1.6——多层感知机→代码实现 1779
  • 学习STM32的定时器和中断 595

最新文章

  • this.$router.back返回上一页带参数,上一页面接收参数做出判断
  • 高中数学学科知识与教学能力
  • react输入框输入的空格 样式 和输入后页面显示一致
2024年24篇
2023年30篇
2022年157篇
2021年98篇

目录

目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值

玻璃钢生产厂家福建人物玻璃钢雕塑关公玻璃钢雕塑定做厂家浙江佛像玻璃钢雕塑价位华阴玻璃钢卡通雕塑江苏卡通玻璃钢雕塑定做张掖玻璃钢卡通雕塑制作南京特色玻璃钢雕塑销售厂家玻璃钢雕塑定制选万塑园林工程玻璃钢雕塑的基础西安玻璃钢雕塑小品公司玻璃钢雕塑质保上海通道商场美陈哪里有大型玻璃钢雕塑单价南瓜玻璃钢雕塑定制广东室内商场美陈批发怒江玻璃钢雕塑定做山东超市商场美陈销售厂家南通玻璃钢花盆厂生产厂家金昌大型玻璃钢雕塑四川户外玻璃钢雕塑价位福州玻璃钢牛雕塑商场樱花美陈青岛玻璃钢花盆采购郑州玻璃钢卡通雕塑设计汕尾玻璃钢造型雕塑厂家玻璃钢花箱商场美陈模型南京各大商场春节美陈布置伊春动物玻璃钢雕塑生产厂家党建文化玻璃钢人物雕塑怎么样香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警汪小菲曝离婚始末遭遇山火的松茸之乡雅江山火三名扑火人员牺牲系谣言何赛飞追着代拍打萧美琴窜访捷克 外交部回应卫健委通报少年有偿捐血浆16次猝死手机成瘾是影响睡眠质量重要因素高校汽车撞人致3死16伤 司机系学生315晚会后胖东来又人满为患了小米汽车超级工厂正式揭幕中国拥有亿元资产的家庭达13.3万户周杰伦一审败诉网易男孩8年未见母亲被告知被遗忘许家印被限制高消费饲养员用铁锨驱打大熊猫被辞退男子被猫抓伤后确诊“猫抓病”特朗普无法缴纳4.54亿美元罚金倪萍分享减重40斤方法联合利华开始重组张家界的山上“长”满了韩国人?张立群任西安交通大学校长杨倩无缘巴黎奥运“重生之我在北大当嫡校长”黑马情侣提车了专访95后高颜值猪保姆考生莫言也上北大硕士复试名单了网友洛杉矶偶遇贾玲专家建议不必谈骨泥色变沉迷短剧的人就像掉进了杀猪盘奥巴马现身唐宁街 黑色着装引猜测七年后宇文玥被薅头发捞上岸事业单位女子向同事水杯投不明物质凯特王妃现身!外出购物视频曝光河南驻马店通报西平中学跳楼事件王树国卸任西安交大校长 师生送别恒大被罚41.75亿到底怎么缴男子被流浪猫绊倒 投喂者赔24万房客欠租失踪 房东直发愁西双版纳热带植物园回应蜉蝣大爆发钱人豪晒法院裁定实锤抄袭外国人感慨凌晨的中国很安全胖东来员工每周单休无小长假白宫:哈马斯三号人物被杀测试车高速逃费 小米:已补缴老人退休金被冒领16年 金额超20万

玻璃钢生产厂家 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化