Welcome to Visit!!
Let's get it
웹 개발자로의 새로운 여정을 시작해 보겠습니다.
여러분들의 방문을
진심으로 환영합니다
웹 개발자로서, 다양한 개발 지식을 다루는
블로그를 만들어보겠습니다. 😃
참고하는 웹사이트 목록 💻
필자가 자주 참고하는 웹사이트를 둘러보세요.
CSS 스타일링 🎨
웹 개발을 할 때 사용하는 CSS 사용방법을 확인해보세요.
목차 CSS는 HTML 태그를 꾸미거나 효과를 넣어 주는 등, 디자인 요소를 추가할 때 사용하는 전처리 과정을 의미한다. 프로젝트의 규모가 커지고 반응형 웹을 구현할 때 CSS는 가독성이 떨어지고 유지보수가 어렵다는 단점이 있다. 하지만 SCSS는 CSS와 달리 코드의 재활용성을 높이고, 가독성을 올려 주기 때문에 유용하다. 특히 변수를 활용하여 코드를 작성할 수 있도록 지원하기 때문에 코드의 가독성을 높여주고 반응형 웹 작성을 더 수월하게 만들 수 있다. 그럼 SCSS를 이용하여 반응형 웹을 개발하는 방법을 알아보자. SCSS를 이용한 반응형 웹 개발. SCSS에서 반응형 사이즈 사용법. 우선 SCSS에서 변수를 설정하고 @mixin을 사용하여 밑과 같이 작성한다. SCSS $pc2000: 2000px..
목차 바로 전 포스팅에서 텍스트에 그라데이션을 적용하는 법에 대해 알아보았다. 그렇다면 이번에는 border에 그라데이션을 적용하는 법에 대해서 포스팅해보겠다. 예제 파일 작성하기 1. Index.html 수정 index.html의 body 부분 안에 밑의 코드를 작성한다. HTML 2. Style.css 작성. 우선 HTML에 CSS를 다음과 같이 추가하여 박스들을 정 중앙에 위치시킨다. CSS html { display: flex; align-items: center; justify-content: center; height: 100vh; } 이후 .box1 부분에 다음과 같이 CSS를 작성한다. CSS .box1 { width: 200px; height: 200px; border: 5px solid..
목차 웹 개발을 하다보면, 디자인적인 측면에서 말줄임(...)을 사용해야 하는 경우가 많다. 왜냐하면 이렇게 말줄임표를 사용해야 디자인이 더 깔끔해 보이기 때문이다. 말줄임 CSS 문법은 다음과 같다. CSS overflow: hidden; : 박스에서 넘쳐난 텍스트 숨기기 white-space: nowrap; : 줄바꿈이 없어짐 text-overflow: ellipsis; : ... 말줄임 효과 -webkit-line-clamp : '글자'; : '글자'의 최대 라인수를 결정 -webkit-box-orient: vertical; : 영역 박스의 내의 정렬을 수직으로 만든다. word-break: break-all; : 어절이 유지되지 않고 끊어져서 줄바꿈 됨 1. 한줄만 나타내기 결과) Lorem, i..
목차 웹 개발을 하다보면 가끔식 사용하는 텍스트에 그라데이션 효과를 넣는 것이 헷갈릴 때가 있어서 지금 작성해보고자 한다. 우선 텍스트에 적용되는 그라디언트 속성을 다음과 같다. CSS # 이 속성은 그라데이션을 넣어주는 속성이다. background: linear-gradient(방향, #색상 코드, #색상 코드, #색상 코드,... , #색상 코드); # 이 속성은 요소의 배경이 어디까지 색을 채울지 정하는 속성이다. -webkit-background-clip: text; # 텍스트 문자의 채우기 색을 지정하는 속성으로, 이 속성이 지정되지 않는다면 color의 색상을 따라간다. -webkit-text-fill-color: transparent; 그럼, 이 내용을 바탕으로 텍스트에 그라데이션을 적용하..
Guest Book
블로그를 방문해주셔서 감사드립니다.
자유롭게 댓글 달아주세요 ~
Tag Page
원하시는 태그를 클릭해보세요.
Light Dev
Light Dev에서 공부한 내용을 정리합니다.
[CSS] 📝 밑줄 애니메이션 작성법. 본문
목차
CSS로 밑줄 애니메이션 만들어보자
프론트엔드 작업을 하다보면 강조하고 싶은 글들이 있을 때 형광펜 효과나 애니메이션 효과를 사용해야 할 때가 있다. 왜냐하면 형광펜 효과나 애니메이션 효과가 들어가게 되면 방문자들에게 좀 더 좋은 UI를 제공할 수 있기 때문이다.
저는 첫번째 예제 파일에서는 CSS
를 이용한 밑줄 효과를 작성했는데, 이것은 "형광펜으로 밑줄을 그은 듯한 느낌의 CSS 스타일"
로, 3가지 종류의 예시를 작성해보았다. 두번째 예제 파일에서는 "마우스 호버시 밑줄이 나타나는 애니메이션 CSS"
를 작성해보았다.
형광펜 밑줄 효과
우선 <mark>태그만 사용한 경우
mark
태그를 사용하면 기본적으로 노란색 형광펜이 칠해진 상태가 된다.
/* HTML */
<p>HTML의 <mark>mark tag만 사용한</mark> 형광펜 효과.</p>
<p>
HTML의 <mark class="green">mark tag만 사용한</mark> 형광펜 효과(초록색).
</p>
/* CSS */
mark.green {
background-color: rgba(80, 255, 0, 0.3);
}
CSS의 배경색(background-image)를 사용한 경우
background-color
,background-image
의linear-gradient
속성을 활용한 예제.
/* HTML */
<p>
<span class="highlight">CSS의 배경색(background-color)</span>을 이용한
형광펜 효과
</p>
<p>
<span class="highlight two-highlight">CSS의 배경색(background-color)</span
>을 이용한 형광펜 효과(두가지색)
</p>
/* CSS */
.highlight {
background-color: #fff2ac;
background-image: linear-gradient(to right, #ffe359 0%, #fff2ac 100%);
}
.highlight.two-highlight {
background-color: #fff2ac;
background-image: linear-gradient(
to right,
rgb(132, 250, 176) 0%,
rgb(143, 211, 244) 100%
);
}
형광펜으로 밑의 반만 줄을 그은듯한 효과
- 형관펜으로 밑의 부분 반만 밑줄을 긋고 싶다면 50%를 중간에 넣어주면 적용된다.
/* HTML */
<p>
<span class="half-highlight">CSS의 배경색(background-color)</span>을
이용한 형광펜으로 반만 밑줄 그은 효과
</p>
/* CSS */
.half-highlight {
background: linear-gradient(180deg, rgba(255, 255, 255, 0) 50%, #ffd0ae 50%);
}
🚀 예제 파일
- 위에서 작성한 3가지 예제를
codeSandBox
에서 구현한 예제 파일.
마우스를 올려 놓으면 밑줄이 그어지는 애니메이션 효과
왼쪽에서 오른쪽으로 이동하는 애니메이션
- 밑줄이
Hover
시에 왼쪽에서 오른쪽으로 이동하는 애니메이션 예제.
/* HTML */
<p>
<span class="to-right-underline">왼쪽에서 오른쪽으로 이동하는 Animation</span>
</p>
/* CSS */
.to-right-underline {
position: relative;
}
.to-right-underline:after {
content: "";
position: absolute;
left: 0;
bottom: -10px;
width: 0px;
height: 2px;
margin: 5px 0 0;
transition: all 0.2s ease-in-out;
transition-duration: 0.3s;
opacity: 0;
background-color: #8fd3f4;
}
.to-right-underline:hover:after {
width: 100%;
opacity: 1;
}
가운데서 좌우로 펼쳐지는 애니메이션
- 밑줄이
Hover
시에 가운데서 좌우로 펼쳐지는 애니메이션 예제.
/* HTML */
<p>
<span class="spread-underline">가운데서 좌우로 펼쳐지는 라인 Animation</span>
</p>
/* CSS */
.spread-underline {
color: #333;
text-decoration: none;
display: inline-block;
padding: 15px 0;
position: relative;
}
.spread-underline:after {
background: none repeat scroll 0 0 transparent;
bottom: 0;
content: "";
display: block;
height: 2px;
left: 50%;
position: absolute;
background: #ffb000;
transition: width 0.3s ease 0s, left 0.3s ease 0s;
width: 0;
}
.spread-underline:hover:after {
width: 100%;
left: 0;
}
형광펜 효과가 위로 올라오는 애니메이션
- 밑줄이
Hover
시에 형광펜 효과가 위로 올라오는 애니메이션 예제.
/* HTML */
<p>
<span class="highlight">형광펜 효과가 위로 올라오는 Animation</span>
</p>
/* CSS */
.highlight {
background-image: linear-gradient(120deg, #84fab0 0%, #8fd3f4 100%);
background-repeat: no-repeat;
background-size: 100% 50%;
background-position: 0 88%;
transition: background-size 0.25s ease-in;
}
.highlight:hover {
background-size: 100% 100%;
}
밑줄이 위에서 살짝 떨어지는 애니메이션
- 밑줄이
Hover
시에 밑줄이 위에서 살짝 떨어지는 애니메이션 예제.
/* HTML */
<p>
<span class="drop-in-underline">위에서 살짝 떨어지는 Animation</span>
</p>
/* CSS */
.drop-in-underline {
position: relative;
padding-bottom: 10px;
}
.drop-in-underline:before {
content: "";
position: absolute;
bottom: 2px;
left: 0;
right: 0;
height: 2px;
background-color: #b9f;
}
.drop-in-underline:before {
opacity: 0;
-webkit-transform: translateY(-8px);
transform: translateY(-8px);
-webkit-transition: opacity 0s,
-webkit-transform 0s cubic-bezier(0.175, 0.885, 0.32, 1.275);
transition: opacity 0s,
-webkit-transform 0s cubic-bezier(0.175, 0.885, 0.32, 1.275);
transition: transform 0s cubic-bezier(0.175, 0.885, 0.32, 1.275), opacity 0s;
transition: transform 0s cubic-bezier(0.175, 0.885, 0.32, 1.275), opacity 0s,
-webkit-transform 0s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}
.drop-in-underline:hover:before {
opacity: 1;
-webkit-transform: translateY(0);
transform: translateY(0);
-webkit-transition: opacity 0.2s,
-webkit-transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275);
transition: opacity 0.2s,
-webkit-transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275);
transition: transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275),
opacity 0.2s;
transition: transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275),
opacity 0.2s, -webkit-transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}
🚀 예제 파일
- 위에서 작성한 3가지 예제를
codeSandBox
에서 구현한 예제 파일이다.
이 글이 좋으셨다면 구독 & 좋아요
여러분의 구독과 좋아요는
저자에게 큰 힘이 됩니다.
사이트를 방문해 주셔서 감사합니다
만일 도움이 되셨으면 공감과 구독 버튼 클릭 부탁드립니다.
추가적인 질문사항이나 이해가 안되는 점이 있으면 댓글로 적어주세요.
© Copyright 2023 Light