Home >Web Front-end >HTML Tutorial >关于css在不同类上触发transition过渡问题_html/css_WEB-ITnose

关于css在不同类上触发transition过渡问题_html/css_WEB-ITnose

WBOY
WBOYOriginal
2016-06-21 09:01:481458browse

通过点击一个类触发事件,使另一个类发生display从none到block从而产生height的变化。

在各个类下面添加transition:height 2s;都没有效果

要怎样设置才能使该变化有过渡效果。


回复讨论(解决方案)

设置高度

设置高度

我的页面是用百分比设置的,能不能在不设置px的情况下使用呢

百分比也可以。比如height: 0%;到height: 100%;

百分比也可以。比如height: 0%;到height: 100%;


我的height是auto;在下面设置transition没效果;

是那种点击出下拉栏的那种效果,有三层,所以高度变化有三层,点击事件使通过JS添加的。

所以我只有个变化的DIV,和none类{display:none}控制出现和消失

不知道要怎么做才能加过渡效果QAQ

听你的描述,貌似是出在display:none到block的问题吧,你过渡都没声明这个属性,怎么会有从无到有的效果(PS:过渡不支持这个属性)。所以你只要把display:none去掉就行了,让元素的高度变化就行

简单一点说就是我元素本身是display:block,然后通过js 增删none类{display:none}来达到下拉栏的效果;

但是过渡效果不知道如何才能添加进去,直接加transition:height 2s;没有效果

简单一点说就是我元素本身是display:block,然后通过js 增删none类{display:none}来达到下拉栏的效果;

但是过渡效果不知道如何才能添加进去,直接加transition:height 2s;没有效果



别用js去增删none类,改变高度就行。因为你加了这个所有没有效果。

一↓




    一.1 
    一.2 
    一.3 
     
    

        一.4.1 
        

        

            一.4.2.1 
            一.4.2.2 



差不多就这样,通过点击有↓的div然后达到增删none类的效果

css方面
        .menu-item {
display: block;
height:auto;
width:100%;
background:#B4B4B4;
overflow:hidden;
position:relative;

transition:height 2s; /*没有效果*/
}
 


简单一点说就是我元素本身是display:block,然后通过js 增删none类{display:none}来达到下拉栏的效果;

但是过渡效果不知道如何才能添加进去,直接加transition:height 2s;没有效果



别用js去增删none类,改变高度就行。因为你加了这个所有没有效果。

那不就得全部重做了

已经不打算纠结display了,但是为什么.none {height:0%!important;}不起作用,!important不是最高级了吗,还是被其他css高度覆盖了

transition过渡功能有局限性,其过渡属性的起始值和终止值都必需是数值型的值。而且必需明确的设定为固定的数值。不能用auto,none,block等属性做过渡

transition过渡功能有局限性,其过渡属性的起始值和终止值都必需是数值型的值。而且必需明确的设定为固定的数值。不能用auto,none,block等属性做过渡

那已经没办法了吗 ~ 能不能不用css也能做出平滑下拉的效果~


transition过渡功能有局限性,其过渡属性的起始值和终止值都必需是数值型的值。而且必需明确的设定为固定的数值。不能用auto,none,block等属性做过渡

那已经没办法了吗 ~ 能不能不用css也能做出平滑下拉的效果~
看看这个
http://stackoverflow.com/questions/3508605/how-can-i-transition-height-0-to-height-auto-using-css



transition过渡功能有局限性,其过渡属性的起始值和终止值都必需是数值型的值。而且必需明确的设定为固定的数值。不能用auto,none,block等属性做过渡

那已经没办法了吗 ~ 能不能不用css也能做出平滑下拉的效果~
看看这个
http://stackoverflow.com/questions/3508605/how-can-i-transition-height-0-to-height-auto-using-css

谢谢,我把一些重要的高度改成max-height和transition:max-height 2x;后可以了!
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn