当前位置: 首页 > 知识库问答 >
问题:

如何使用flex[duplicate]根据内容长度设置宽度

蔚俊人
2023-03-14

我试图使每个项目的宽度的基础上的内容,但我到目前为止设置的宽度所有的方式可用的空间。我做错了什么?

目标是根据内容大小设置宽度。

[Hello]
[Hello world]

目前

[Hello                   ]
[Hello world             ]

https://jsfiddle.net/v6cgLjbd/8/

<span class='box'>
  <span class='item'>Hello</span>
  <span class='item'>Hello World</span>
  <span class='item'>Hello lOOOOONG text</span>
</span>

.box {
  height: 200px;
  width: auto;
  border: 1px solid red;
  display: flex;
  flex-direction: column;
}

.item {
  background-color: gray;
  flex: 0 0 auto;
  width: auto;
}

共有1个答案

祁星阑
2023-03-14

您需要在flex容器上添加align items:flex start。在父元素上使用flex-direction:column时,在子元素上使用flex属性可以控制高度而不是宽度。

.box {
  height: 200px;
  border: 1px solid red;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.item {
  background-color: gray;
}
<span class='box'>
  <span class='item'>Hello</span>
  <span class='item'>Hello World</span>
  <span class='item'>Hello lOOOOONG text</span>
</span>
 类似资料:
  • 问题内容: 我的元素: 风格: 脚本,使其保持方形: 问题是要在纯CSS中做同样的事情。没有脚本。 问题答案: 我知道有两种技术可以根据元素的高度保持元素的长宽比: 当 高度相对于视口时 : 您可以使用vh单位: 对于 基于父元素的高度的高度 : 您可以使用具有所需纵横比的虚拟图像。宽高比为1:1的示例可以使用1 * 1透明.png图像,也可以使用@vlgalik注释为1 * 1 base64编码

  • 问题内容: 我想通过服务器客户端JSP页面获取内容大小。但是request.getContentLength()总是返回-1,我为什么不呢? Android程式码片段: 问题答案: 您正在使用conn.setChunkedStreamingMode(100),当content- lenght事先未知时,它将有效地启用100字节块中的块传输编码。 如果事先知道要在请求正文中发送的内容的长度,请使用c

  • 问题内容: 我想在UILabel旁边显示图像,但是UILabel具有可变的文本长度,所以我不知道将图像放置在哪里。我该怎么做? 问题答案: -[NSString sizeWithFont:forWidth:lineBreakMode:]有什么用? 这个问题可能有您的答案,对我有用。 2014年,我根据下面的诺伯特的超方便评论编辑了这个新版本!这样就可以了。干杯

  • 我需要建立一个面板,它包含2个内部面板,从左到右排序,有固定的高度和不同的宽度。宽度扩展,或者换句话说,x填充量取决于父容器的宽度。场景是,直到父容器的某个宽度,我只希望右面板填充它所需的水平空间,从该宽度到更大的宽度,只希望左面板展开,依此类推。 我尝试了两种方法--切换两个子面板的,或者使用并类似地删除子面板,然后将它们与展开组件的相应或(或west)重新添加。此切换将在计算结果宽度间隔时进行

  • 问题内容: 我只是无法设置导航元素的高度和宽度。 有什么想法我做错了吗? 问题答案: 添加显示:块; a-tag是一个内联元素,因此您的高度和宽度将被忽略。

  • 如果将标记放置在块布局和flex布局项中,则其行为似乎有所不同: 第一个(标有绿色背景)的大小由父的宽度(页面宽度)决定。但是放置在flex容器中的第二个似乎具有最大宽度,并且生成超过页面宽度的内容。只有当有很长的单词时才会发生这种情况。有什么方法可以正确限制第二个的宽度,而不需要像显式指定它或通过)删除超过的文本那样的黑客攻击?我已经尝试了但它没有任何区别:(