2017-12-30 6 views
3

나는 순수한 CSS CSS를 가지고 있습니다. 다른 사람의 코드를 기반으로하는 div 확장/축소 div here 기본적으로 숨겨진 텍스트는 접을 수 있지만 텍스트가 클릭 후 펼쳐지면 더 좋을 것입니다.CSS 축소/확장

누구나이 코드를 편집하여 클릭 수가 최소화되기 전에 텍스트가 최소화되도록 제안하는 사람이 있습니까? javascript가 피하고 Wordpress 압축이 좋다면 더 좋을 것입니다.

<main> 
    <h2>CSS Expand/Collapse Section</h2> 
    <input id="toggle" type="checkbox" checked> 
    <label for="toggle">Hidden Kitten</label> 
    <div id="expand"> 
    <section> 
     <p>mew</p> 
    </section> 
    </div> 
    <section> 
    <h3>Other content</h3> 
    <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Maecenas porta non turpis faucibus lobortis. Curabitur non eros rutrum, gravida felis non, luctus velit. Ut commodo congue velit feugiat lobortis. Etiam nec dolor quis nulla bibendum blandit vitae nec enim. Maecenas id dignissim erat. Aenean ac mi nec ante venenatis interdum quis vel lacus. 
    </p> 
    <p>Aliquam ligula est, aliquet et semper vitae, elementum eget dolor. In ut dui id leo tristique iaculis eget a dui. Vestibulum cursus, dolor sit amet lacinia feugiat, turpis odio auctor nisi, quis pretium dui elit at est. Pellentesque lacus risus, vulputate sed gravida eleifend, accumsan ac ante. Donec accumsan, augue eu congue condimentum, erat magna luctus diam, adipiscing bibendum sem sem non elit.</p> 
    </section> 
</main> 

CSS는

 @import url(https://fonts.googleapis.com/css?family=Open+Sans:400,700); 

body { 
    font-family: "Open Sans", Arial; 
    background: #CCC; 
} 
main { 
    background: #EEE; 
    width: 600px; 
    margin: 20px auto; 
    padding: 10px 0; 
    box-shadow: 0 3px 5px rgba(0,0,0,0.3); 
} 
h2 { 
    text-align: center; 
} 
p { 
    font-size: 13px; 
} 
input { 
    display: none; 
    visibility: hidden; 
} 
label { 
    display: block; 
    padding: 0.5em; 
    text-align: center; 
    border-bottom: 1px solid #CCC; 
    color: #666; 
} 
label:hover { 
    color: #000; 
} 
label::before { 
    font-family: Consolas, monaco, monospace; 
    font-weight: bold; 
    font-size: 15px; 
    content: "+"; 
    vertical-align: text-top; 
    display: inline-block; 
    width: 20px; 
    height: 20px; 
    margin-right: 3px; 
    background: radial-gradient(ellipse at center, #CCC 50%, transparent 50%); 
} 
#expand { 
    height: 0px; 
    overflow: hidden; 
    transition: height 0.5s; 
    background: url(http://placekitten.com/g/600/300); 
    color: #FFF; 
} 
section { 
    padding: 0 20px; 
} 
#toggle:checked ~ #expand { 
    height: 250px; 
} 
#toggle:checked ~ label::before { 
    content: "-"; 
} 

답변

2

난 당신이 이미지 시작 붕괴가 찾고 있습니다 생각합니다.

이렇게하려면 입력 체크 박스에서 checked 속성을 제거하면됩니다.

변경 :

<input id="toggle" type="checkbox" checked> 

사람 :

body { 
 
    font-family: "Open Sans", Arial; 
 
    background: #CCC; 
 
} 
 

 
main { 
 
    background: #EEE; 
 
    width: 600px; 
 
    margin: 20px auto; 
 
    padding: 10px 0; 
 
    box-shadow: 0 3px 5px rgba(0, 0, 0, 0.3); 
 
} 
 

 
h2 { 
 
    text-align: center; 
 
} 
 

 
p { 
 
    font-size: 13px; 
 
} 
 

 
input { 
 
    display: none; 
 
    visibility: hidden; 
 
} 
 

 
label { 
 
    display: block; 
 
    padding: 0.5em; 
 
    text-align: center; 
 
    border-bottom: 1px solid #CCC; 
 
    color: #666; 
 
} 
 

 
label:hover { 
 
    color: #000; 
 
} 
 

 
label::before { 
 
    font-family: Consolas, monaco, monospace; 
 
    font-weight: bold; 
 
    font-size: 15px; 
 
    content: "+"; 
 
    vertical-align: text-top; 
 
    display: inline-block; 
 
    width: 20px; 
 
    height: 20px; 
 
    margin-right: 3px; 
 
    background: radial-gradient(ellipse at center, #CCC 50%, transparent 50%); 
 
} 
 

 
#expand { 
 
    height: 0px; 
 
    overflow: hidden; 
 
    transition: height 0.5s; 
 
    background: url(http://placekitten.com/g/600/300); 
 
    color: #FFF; 
 
} 
 

 
section { 
 
    padding: 0 20px; 
 
} 
 

 
#toggle:checked~#expand { 
 
    height: 250px; 
 
} 
 

 
#toggle:checked~label::before { 
 
    content: "-"; 
 
}
<main> 
 
    <h2>CSS Expand/Collapse Section</h2> 
 
    <input id="toggle" type="checkbox"> 
 
    <label for="toggle">Hidden Kitten</label> 
 
    <div id="expand"> 
 
    <section> 
 
     <p>mew</p> 
 
    </section> 
 
    </div> 
 
    <section> 
 
    <h3>Other content</h3> 
 
    <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Maecenas porta non turpis faucibus lobortis. Curabitur non eros rutrum, gravida felis non, luctus velit. Ut commodo congue velit feugiat lobortis. Etiam nec dolor quis nulla bibendum blandit 
 
     vitae nec enim. Maecenas id dignissim erat. Aenean ac mi nec ante venenatis interdum quis vel lacus. 
 
    </p> 
 
    <p>Aliquam ligula est, aliquet et semper vitae, elementum eget dolor. In ut dui id leo tristique iaculis eget a dui. Vestibulum cursus, dolor sit amet lacinia feugiat, turpis odio auctor nisi, quis pretium dui elit at est. Pellentesque lacus risus, vulputate 
 
     sed gravida eleifend, accumsan ac ante. Donec accumsan, augue eu congue condimentum, erat magna luctus diam, adipiscing bibendum sem sem non elit.</p> 
 
    </section> 
 
</main>

1

: 여기

<input id="toggle" type="checkbox"> 

가 runable 조각에 당신 코드 input에서 checked을 삭제하면 잘 갈 수 있습니다.

그것은 다음과 같아야합니다

<input id="toggle" type="checkbox">