File tree Expand file tree Collapse file tree 1 file changed +31
-0
lines changed Expand file tree Collapse file tree 1 file changed +31
-0
lines changed Original file line number Diff line number Diff line change 2424 .panels {
2525 min-height : 100vh ;
2626 overflow : hidden;
27+ display : flex;
2728 }
2829
2930 .panel {
4142 font-size : 20px ;
4243 background-size : cover;
4344 background-position : center;
45+ flex : 1 ;
46+ justify-content : center;
47+ display : flex;
48+ flex-direction : column;
4449 }
4550
4651
5459 margin : 0 ;
5560 width : 100% ;
5661 transition : transform 0.5s ;
62+ flex : 1 0 auto;
63+ display : flex:
64+ justify-content: center;
65+ align-items : center;
66+
5767 }
5868
69+ .panel > * : first-child { transform : translateY (-100% );}
70+ .panel .open-active > * : first-child { transform : translateY (0 );}
71+ .panel > * : last-child { transform : translateY (100% );}
72+ .panel .open-active > * : last-child { transform : translateY (0 ); }
73+
5974 .panel p {
6075 text-transform : uppercase;
6176 font-family : 'Amatic SC' , cursive;
6782 }
6883
6984 .panel .open {
85+ flex : 5 ;
7086 font-size : 40px ;
7187 }
7288
107123 </ div >
108124
109125 < script >
126+ const panels = document . querySelectorAll ( '.panel' ) ;
127+
128+ function toggleOpen ( ) {
129+ this . classList . toggle ( 'open' ) ;
130+ }
131+
132+ function toggleActive ( e ) {
133+ console . log ( e . propertyName ) ;
134+ if ( e . propertyName . includes ( 'flex' ) ) {
135+ this . classList . toggle ( 'open-active' ) ;
136+ }
137+ }
138+
139+ panels . forEach ( panel => panel . addEventListener ( 'click' , toggleOpen ) ) ;
140+ panels . forEach ( panel => panel . addEventListener ( 'transitionend' , toggleActive ) ) ;
110141
111142 </ script >
112143
You can’t perform that action at this time.
0 commit comments