热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

解决flex-direction:column之后元素宽度自动变为100%

本文主要介绍关于css,css3,html的知识点,对【解决flex-direction:column之后元素宽度自动变为100%】和【flex布局怎么使元素居中和垂直】有兴趣的朋友可以看下由【程

本文主要介绍关于css,css3,html的知识点,对【解决flex-direction: column 之后元素宽度自动变为100%】和【flex布局怎么使元素居中和垂直】有兴趣的朋友可以看下由【程序员的脱发之路】投稿的技术文章,希望该技术和经验能帮到你解决你所遇的css3学习笔记相关技术问题。

flex布局怎么使元素居中和垂直

解决flex-direction: column 之后元素宽度自动变为100% 一、问题描述二、解决方式1.设置某个子元素2.设置所有子元素 三、具体原因

一、问题描述

当我们设置父元素flex-direction为column后,他的子元素如果我们没有设置具体宽度(可能我们希望子元素宽度由内容撑开),这时就会发现,所有的子元素宽度默认是100%了
例如:

解决flex-direction: column 之后元素宽度自动变为100%


    DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title
      title> <style> .box {
        display: flex; flex-direction: column; justify-content: space-between; height: 300px; width: 500px; padding: 20px; background: #1E9FFF; } .item {
        height: 50px; background: #5FB878; } 
       style> 
        head> <body> <div class="box" style=""> <span class="item">第一个子元素
         span> <span class="item">第二个子元素
          span> <span class="item">第三个子元素
           span> 
            div> 
             body> 
              html> 
二、解决方式

解决方式其实很简单

1.设置某个子元素

我们给对应子元素的align-self设置除auto和stretch之外的值就行
例如:

<div class="box" style="">
  <span class="item" style="align-self: baseline">第一个子元素
     span> <span class="item">第二个子元素
      span> <span class="item">第三个子元素
       span> 
        div> 

解决flex-direction: column 之后元素宽度自动变为100%

2.设置所有子元素

给父元素的alin-items设置除auto和stretch之外的值就行
例如:

  <style> .box {
      display: flex; flex-direction: column; justify-content: space-between; align-items: start; height: 300px; width: 500px; padding: 20px; background: #1E9FFF; } .item {
      height: 50px; background: #5FB878; } 
     style> 

解决flex-direction: column 之后元素宽度自动变为100%

三、具体原因

我们知道在flex中align-self和align-items的作用差不多,不过align-self是设置子元素自己的对齐方式,而align-items是设置所有子元素的对其方式。
align-self和align-items在flex布局中默认值效果基本和stretch一样。(详细参见MDN)而stretch的作用是拉伸“自动”大小的物品以适合容器,也就是当我们不设置子元素的宽度时,它就会拉伸子元素填充满父元素。

本文《解决flex-direction: column 之后元素宽度自动变为100%》版权归程序员的脱发之路所有,引用解决flex-direction: column 之后元素宽度自动变为100%需遵循CC 4.0 BY-SA版权协议。


推荐阅读
  • 1、给边框加上圆角及阴影,如下代码:<!DOCTYPEhtmlPUBLIC"-W3CDTDHTML4.01TransitionalEN"" ... [详细]
  • 移动端常用单位——rem的使用方法和注意事项
    本文介绍了移动端常用的单位rem的使用方法和注意事项,包括px、%、em、vw、vh等其他常用单位的比较。同时还介绍了如何通过JS获取视口宽度并动态调整rem的值,以适应不同设备的屏幕大小。此外,还提到了rem目前在移动端的主流地位。 ... [详细]
  • 如何在HTML中获取鼠标的当前位置
    本文介绍了在HTML中获取鼠标当前位置的三种方法,分别是相对于屏幕的位置、相对于窗口的位置以及考虑了页面滚动因素的位置。通过这些方法可以准确获取鼠标的坐标信息。 ... [详细]
  • 在DIV内垂直居中UL - Centering Vertically an UL inside a DIV
    iamtryingtomakeanavigationmenuinsidea200pxx200pxsquare,thisnavigationlist(UL)chang ... [详细]
  • 很有意思的全景动画:(直接上代码)html部分:<div><div>css部分:.panorama{width:300px;hei ... [详细]
  • 这篇文章主要为大家展示了“html5+css3网站菜单的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习 ... [详细]
  • VScode格式化文档换行或不换行的设置方法
    本文介绍了在VScode中设置格式化文档换行或不换行的方法,包括使用插件和修改settings.json文件的内容。详细步骤为:找到settings.json文件,将其中的代码替换为指定的代码。 ... [详细]
  • 高质量SQL书写的30条建议
    本文提供了30条关于优化SQL的建议,包括避免使用select *,使用具体字段,以及使用limit 1等。这些建议是基于实际开发经验总结出来的,旨在帮助读者优化SQL查询。 ... [详细]
  • 本文介绍了解决IE678伪类不兼容问题的方法,包括少用CSS3和HTML5独有的属性,使用CSS hacker,使用last-child清除浮动、批量添加标签、去掉list item最后一个的border-right等技巧。同时还介绍了使用after清除浮动时加上IE独有属性zoom:1的处理方法。另外,本文还提到可以使用jQuery代替批量添加标签的功能,以及使用负边距和CSS2选择器element+element去掉list item最后一个的border-right的方法。 ... [详细]
  • SpringMVC接收请求参数的方式总结
    本文总结了在SpringMVC开发中处理控制器参数的各种方式,包括处理使用@RequestParam注解的参数、MultipartFile类型参数和Simple类型参数的RequestParamMethodArgumentResolver,处理@RequestBody注解的参数的RequestResponseBodyMethodProcessor,以及PathVariableMapMethodArgumentResol等子类。 ... [详细]
  • 本文介绍了一种在PHP中对二维数组根据某个字段进行排序的方法,以年龄字段为例,按照倒序的方式进行排序,并给出了具体的代码实现。 ... [详细]
  • 前端实用的CSS3技巧有哪些
    本文小编为大家详细介绍“前端实用的CSS3技巧有哪些”,内容详细,步骤清晰,细节处理妥当,希望这篇“前端实用的CSS3技巧有哪些”文章能帮助大家 ... [详细]
  • http:js.alixixi.coma2014021292298.shtmlhttp:w3cshare.comexample?pid134http:w3cshare.comc ... [详细]
  • 小编给大家分享一下CSS3如何实现loading预加载动画特效,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章 ... [详细]
  • Ihaveafixed,100%heightmenuontheleftandIneedtocreateashadoweffectonitsrightside ... [详细]
author-avatar
灵通vs砖头_836
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有