Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/40.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html 100%高度的CSS_Html_Css_Css Animations - Fatal编程技术网

Html 100%高度的CSS

Html 100%高度的CSS,html,css,css-animations,Html,Css,Css Animations,编辑:回答转换:scaleY()在我看来工作得很好。抱歉给你添麻烦了 我正在为用JavaScript触发的CSS动画创建一些代码。该动画将应用于div元素,我想知道一种方法,可以输入一个表示div全高的值(div高度会有所不同)。我可以将to值设置为height:100px触发它,但这不是我想要的 @keyframes slideIn { from {height: 0;} to {height: 100%;} } 有什么方法可以表示CSS中元素的完整高度吗?post div的

编辑:回答<代码>转换:scaleY()在我看来工作得很好。抱歉给你添麻烦了

我正在为用JavaScript触发的CSS动画创建一些代码。该动画将应用于div元素,我想知道一种方法,可以输入一个表示div全高的值(div高度会有所不同)。我可以将
to
值设置为
height:100px
触发它,但这不是我想要的

@keyframes slideIn {
    from {height: 0;}
    to {height: 100%;}
}

有什么方法可以表示CSS中元素的完整高度吗?

post div的高度不是固定的,而是动态的
100%
使div填充其父级的总高度。您真正的意思是将div从0高度设置为自动高度,而这在当前是不可设置动画的。对于纯CSS解决方案,您可以尝试其他方法,如
max height
scaleY()
。或者,您可以使用JavaScript运行计算

最大高度

@keyframes slideIn {
    from {max-height: 0px;}
    to {max-height: 1000px;}
}
缺点

  • 过渡时间不一致
  • 限制箱子高度
垂直比例

@keyframes slideIn {
    from {transform: scaleY(0);}
    to {transform: scaleY(1);}
}
缺点

  • 不“滑动”div周围的空间
  • 可能会覆盖其他变换效果
如果您不(想)预先知道元素高度并将其“增长”为通常占据的高度,则不能使用
高度:100%
,因为这会使元素占据其父元素高度的100%

但是,您可以告诉它可能在大小上使用
N
(其中
N
是一个任意值,如
10000px
1000em
,或任何漂浮在船上的值)

但要使其工作,还需要设置一些其他属性(动画之外):

@keyframes-woot{
从{最大高度:0;}
至{最大高度:100em;}
}
.例1{
最大高度:1米;
溢出:隐藏;
过渡:最大高度5s;
}
.示例1:悬停{
最大高度:100em;
}
.例2{
溢出:隐藏;
动画:woot 5s无限交替;
}

Lorem ipsum dolor sit amet,是一位杰出的献身者。埃蒂亚姆和帕特·莱克托斯,ac亨德雷特酒后驾车。不要开汽车。Integer eleifend blandit libero vitae porttitor。在奥迪奥拍卖行里,有一颗钻石。多奈克·尼西发酵液,亨德雷特·奥古斯特,萨吉蒂·埃拉特。毛里斯在俄罗斯方块。双叶舌苔,发酵液,乳酸菌。这是一个很好的例子。佩伦特式居住者morbi tristique Sentecus et netus et malesuada以turpis egestas闻名。馆长的设施是不可侵犯的。葡萄皮原。侵权人万岁,阿梅特·莫利斯·利奥·奥克托坐在那里。这是一种美味佳肴,是一种高贵的调味品。这是一种特殊的性爱,是一种特殊的性爱,是一种特殊的性爱,是一种暂时的精英性爱。

Lorem ipsum dolor sit amet,是一位杰出的献身者。埃蒂亚姆和帕特·莱克托斯,ac亨德雷特酒后驾车。不要开汽车。Integer eleifend blandit libero vitae porttitor。在奥迪奥拍卖行里,有一颗钻石。多奈克·尼西发酵液,亨德雷特·奥古斯特,萨吉蒂·埃拉特。毛里斯在俄罗斯方块。双叶舌苔,发酵液,乳酸菌。这是一个很好的例子。佩伦特式居住者morbi tristique Sentecus et netus et malesuada以turpis egestas闻名。馆长的设施是不可侵犯的。葡萄皮原。侵权人万岁,阿梅特·莫利斯·利奥·奥克托坐在那里。这是一种美味佳肴,是一种高贵的调味品。这是一种特殊的性爱,是一种特殊的性爱,是一种特殊的性爱,是一种暂时的精英性爱。
您知道家长需要有一个指定的高度才能工作吗?如果父对象是body,那么您也需要将body的高度指定为100%(html标记)>
html,body{height:100%;}
您可以通过多种方式实现该目标。尝试使用
flex
位置:绝对;排名:0;底部:0
。否则,请设置
max height
属性的动画或为父对象设置固定高度。我正在将一个div元素插入到主体中,希望它从
0
高度滑入到其全高度。没关系,没关系,我只会在脚本标记中拼凑一些东西。全高度是指不可设置动画的
auto
,为此,您可以使用
max height
属性设置div的动画,其中max height的高度将大于div将达到的最大高度。看看啊,我明白了。谢谢你,我很天真,非常感谢你的帮助。很抱歉,如果我遇到麻烦,后一种解决方案可以很好地工作,只要过渡长度不是太慢。
@keyframes slideIn {
  from {max- height: 0;}
  to {max-height: 100%;}
}
height: auto;
overflow: hidden;