<div id="wrap">
<div class="borderArea">
<span class="centerBd">가운데 보더 애니메이션</span>
<span class="rightBd">오른쪽 보더 애니메이션</span>
<span class="leftBd">왼쪽 보더 애니메이션</span>
</div>
</div>
.borderArea{display: flex; flex-direction: column; align-items: center;
span{display: inline-block; font-family: 'Noto Sans'; font-size: 1.5em; cursor: pointer; text-transform: uppercase;
&:after{content: ''; display: inherit; border-bottom: 2px solid $blackBg; transform: scaleX(0); transition: .5s;}
&.leftBd:after{transform-origin: 0% 50%;}
&.rightBd:after{transform-origin: 100% 50%;}
&:hover{
&:after{transform: scaleX(1);}
}
+span{margin-top: 30px;}
}
}
.borderArea {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-ms-flex-direction: column;
flex-direction: column;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
}
.borderArea span {
display: inline-block;
font-family: 'Noto Sans';
font-size: 1.5em;
cursor: pointer;
text-transform: uppercase;
}
.borderArea span:after {
content: '';
display: inherit;
border-bottom: 2px solid #000;
-webkit-transform: scaleX(0);
transform: scaleX(0);
-webkit-transition: .5s;
transition: .5s;
}
.borderArea span.leftBd:after {
-webkit-transform-origin: 0% 50%;
transform-origin: 0% 50%;
}
.borderArea span.rightBd:after {
-webkit-transform-origin: 100% 50%;
transform-origin: 100% 50%;
}
.borderArea span:hover:after {
-webkit-transform: scaleX(1);
transform: scaleX(1);
}
.borderArea span + span {
margin-top: 30px;
}
아래 주소를 복사하여 다른 곳에 붙여넣으세요.
모바일 환경에서는 코드 결과가 gif로 표시됩니다.
그래도 결과를 볼까요?
(제대로 된 결과를 보려면 노트북 또는 데스크탑에서 실행해주세요.)