首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >儿童身高问题

儿童身高问题
EN

Stack Overflow用户
提问于 2015-07-22 08:31:51
回答 4查看 59关注 0票数 0

好吧,我有我的父母DIV (黑色)和3个孩子。

CSS规则:

代码语言:javascript
复制
#parent{
   height:130px;
}
#description{
   max-height: 80px;
}

现在差不多就是这样了。

我想做什么,

#title应根据内部文本调整大小。它可以是从1行到5-6行的文本(这是一个span,可以是div -有什么区别吗?)

#city大约有99%的时间是一行文本(实际上是一个单词)。可能会发生文本太长的情况,需要将其包装成两行。

#description是一个div,不能超出父框。我需要它有动态高度-至于以后,我使用一些插件,根据它的高度剪短文本,并添加“.”最后。

图像显示了它现在的样子,当我在标题中放了太多的文字时,我希望描述是最大的80 if,但是如果#title占据更多的位置,它可能会更少。

JsFiddle

编辑:更改后的图像

EN

回答 4

Stack Overflow用户

发布于 2015-07-22 09:27:26

您可能想尝试使用flexbox进行这样的布局。它可能不会为您提供一个像素完美的布局类型的复杂规则,但它仍将是一个强有力的控制方式。

Fiddle: https://jsfiddle.net/abhitalks/kwq2L3y7/6/

片段

代码语言:javascript
复制
#parent {
    border: 1px solid black;
    height: 200px; width: 80px;
    float: left; margin: 16px;
    display: flex; flex-direction: column;
}
#title {
    flex: 2 1 auto; /* can grow twice, can shrink, auto height */
    border: 1px solid red;
    overflow: auto;
}
#city {
    flex: 1 1 20px; /* can grow, can shrink, accommodate in 20px */
    border: 1px solid green;
    overflow: hidden;
}
#description {
    flex: 0 1 80px; /* cannot grow, can shrink, accommodate in 80px */
    border: 1px solid blue;
    overflow: hidden;
}
代码语言:javascript
复制
<div id="parent"> 
    <div id='title'>Title</div>
    <div id="city">City</div>
    <div id="description">Description</div>
</div>
<div id="parent"> 
    <div id='title'>Long Title can be of several lines and can grow many lines</div>
    <div id="city">City can be in 2 lines</div>
    <div id="description">Description which is very long and it will not grow beyond 80px</div>
</div>
<div id="parent"> 
    <div id='title'>Title</div>
    <div id="city">City can be in 2 lines what if it is larger</div>
    <div id="description">Description will remain at 80px</div>
</div>

票数 1
EN

Stack Overflow用户

发布于 2015-07-22 08:37:37

想要得到的东西,需要在#description中设置height: 100%

像这样使用:

代码语言:javascript
复制
#parent{
    border: 2px solid black;
    overflow: hidden;
}
#description{
    border: 2px solid blue;
    height: 100%;
}

演示

您可以用省略号显示文本。

票数 0
EN

Stack Overflow用户

发布于 2015-07-22 08:41:35

我不明白您到底想做什么,但是您应该看看“溢出”方法,例如:

代码语言:javascript
复制
#parent{
  overflow-y: hidden;
}

代码语言:javascript
复制
#parent{
  overflow-y: scroll;
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31557912

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档