보통 margin을 이용하게 되면, 부모 엘리먼트를 침범하게 되어 문제가 생길 수 있다.
따라서 padding을 써서 디자인 하는 것이 괜찮을 수 있다.
box-sizing : border-box를 사용해야 박스에다가 패딩이나 마진을 적용했을 때, 크기를 계산하기 편해진다.
css에서 display: flex; 속성을 사용하려면 내가 적용하기 원하는 엘리먼트의 '부모' 엘리먼트에게
해당 속성을 줘야한다. 즉, 원하는 엘리먼트의 '부모'에게 적용하라는 것이다.
justify-content: center;
justify-content: end;
justify-content: space-around;
grid-area를 잡을 때, 사각형이 되는 영역으로 잡아야 영역설정이 가능하다.
background color: rgba(~~~);를 쓰면 안에 있는 콘텐츠(ex.글씨)가 투명해지지 않는다. opacity: 0.5;를 쓰면 안에 있는 콘텐츠(ex.글씨)까지 투명해진다.
이 둘의 차이를 알고 있어야 한다.
트랜지션(transition)은 CSS 프로퍼티의 값이 변화할 때, 프로퍼티 값의 변화가 일정 시간(duration)에 걸쳐 일어나도록 하는 것이다. 예를 들어 아래의 예제를 살펴보자. div 요소는 기본 상태에서 hover 상태로 변화할 때, CSS 프로퍼티 border-radius와 background 프로퍼티의 값이 변화한다.
트랜지션(transition)은 상태 변화에 동반하여 변경되는 CSS 프로퍼티 값에 의한 표시의 변화를 부드럽게 하기 위해 애니메이션 속도를 조절한다. 즉, 프로퍼티 값의 변경이 표시의 변화에 즉시 영향을 미치게 하는 대신 그 프로퍼티 값의 변화가 일정 시간(duration)에 걸쳐 일어나도록 하는 것이다.
Shorthand properties are CSS properties that let you set the values of multiple other CSS properties simultaneously. Using a shorthand property, you can write more concise (and often more readable) style sheets, saving time and energy.
즉, 속성을 지정하거나 할 때 여러번 반복된 문구를 쓰지 않고 한 번에 쓰게 해준다.
코딩을 하는 개발자에게 편의성을 주는 개념이다!
미디어 쿼리란?
반응형 웹피이지를 만들 때, 가장 기초가 되는 것이다. 컴퓨터로 볼 때와 핸드폰을 볼 때 화면 구성이 달라지게 할 수 있다.
예시 코드
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="UTF-8">
<!-- 뷰포트메타태그 -->
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>미디어쿼리</title>
<style>
/* 모든기기공통 CSS */
body{ background-color: orange; }
/* desktop 규격 */
@media screen and (min-width: 1024px){
body{ background-color: lightblue; }
}
/* tablet 규격 */
@media screen and (max-width: 1023px){
body{ background-color: pink; }
}
/* mobile 규격 */
@media screen and (max-width: 540px){
body{ background-color: navy; }
}
</style>
</head>
<body>
</body>
</html>
미디어 쿼리가 잘 적용되는지 확인하기 위해 태그에 배경색들을 첨부했습니다.
데스크톱에서는 라이트 블루가 처리되고, 태블릿은 핑크, 모바일은 네이비로 배경색이 바뀌게 처리했습니다.