1. Text
텍스트 스타일링은 웹 페이지에서 텍스트의 가독성을 향상하고 시각적인 효과를 주는 데 중요한 역할을 한다.
1-1. 글꼴
1-1-1. 글꼴 선택(font-family)
font-family 속성은 웹페이지에서 텍스트에 사용할 글꼴을 정의할 때 사용하는 속성이다. 여러 글꼴을 우선순위대로 지정할 수 있으며, 브라우저는 사용자의 시스템에 해당 글꼴이 없을 때 다음 글꼴로 대처한다.
p {
font-family: Arial, Helvetica, sans-serif;
}
1-1-2. 웹 폰트 사용
사용자의 컴퓨터 시스템에 글꼴이 설치되지 않았더라도 웹 서버로부터 글꼴을 제공받아 사용할 수 있는 웹 전용 글꼴이다. 웹 폰트를 사용함으로써 시스템 글꼴의 문제를 회피할 수 있다.
웹 폰트 적용 방법
1) 글꼴 파일 포함 :
- 글꼴 파일을 웹 문서와 함께 제공한다.
- 글꼴 파일 크기가 크므로 효율적이지 않다
2) 웹 서버 연결 :
- 웹 폰트를 호스팅 하는 웹 서버의 주소를 웹 문서에 연결한다.
- 더 효율적인 방법이다.
1-1-3. 구글 폰트 사이트 이용
구글 폰트 사이트에서 다양한 웹 폰트를 무료로 제공하고 있다. 원하는 글꼴을 선택하고 적용하는 방법이다.
1) 구글 폰트 사이트로 이동한다.
2) 원하는 언어와 글꼴을 선택한다.
3) 해당 글꼴을 선택하고, 스타일을 선택한 다음 "[Select this style]"을 클릭한다.
4) 나타나는 코드를 스타일시트에 추가하여 글꼴을 사용한다.
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="utf-8">
<title>웹 폰트</title>
<style>
@import url(
'<https://fonts.googleapis.com/css2?family=Nanum+Myeongjo&display=swap>'
);
/* id가 nm인 p 요소에만 적용합니다! */
p#nm{ font-family: 'Nanum Myeongjo'; }
</style>
</head>
<body>
<p>정수 반컵에 에스프레소 샷을 넣고, 얼음을 가득 넣어주세요.</p>
<p id="nm">정수 반컵에 에스프레소 샷을 넣고, 얼음을 가득 넣어주세요.</p>
</body>
</html>
1-2. 텍스트 꾸미기
1-2-1. 글자 크기 조절(font-size)
글자 크기를 조절하여 텍스트를 강조하거나 눈에 띄게 만들 수 있다.
h1 {
font-size: 36px;
}
1-2-2. 글자 두께 조절(font-weight)
글자의 두께를 조절하여 텍스트를 강조할 수 있다. <strong> 태그에 글자를 굵게 표시한다.
strong {
font-weight: bold;
}
1-2-3. 이탤릭체 표시(font-style)
글자를 이탤릭체로 표시하여 강조할 수 있다. <em> 태그에 이탤릭체를 적용한다.
em {
font-style: italic;
}
1-2-4. 텍스트 정렬(text-align)
텍스트를 가운데 정렬하거나 다른 정렬 옵션을 사용하여 레이아웃을 개선할 수 있다. <p> 태그 내의 텍스트를 가운데 정렬한다.
p {
text-align: center;
}
1-2-5. 텍스트 강조 효과(text-decoration)
텍스트에 밑줄, 윗줄 또는 취소선을 추가하여 강조할 수 있다.
a {
text-decoration: underline;
}
1-3. 색상지정
색상을 변경하고 텍스트의 색상을 지정하는 방법에는 여러가지가 있다.
1-3-1. color 속성(영어 단어 사용)
- 영어 단어로 색상을 표현하는 방식이다.
- 텍스트의 색상을 변경할 때 가장 간단한 방법은 color 속성을 사용하는 것이다.
- 예를 들어, p요소의 글자 색을 빨간색으로 지정하려면 아래처럼 사용한다.
p {
color: red;
}
1-3-2. rgb 함수 사용하기
- rgb 함수는 빛의 3원색(빨강, 초록, 파랑)을 사용하여 색상을 지정하는 방법이다.
- 빨간색을 rgb 함수로 표현하려면 아래처럼 사용해야 한다.
p {
color: rgb(255, 0, 0);
}
1-3-3. hsl 함수 사용하기
- hsl 함수는 색조(hue), 채도(saturation), 조도(lightness)를 사용하여 색상을 지정하는 방법이다.
- 빨간색을 hsl 함수로 표현하려면 아래처럼 사용한다.
p {
color: hsl(0, 100%, 50%);
}
1-3-4. 16진수 값 입력하기
- 색상을 지정할 때 16진수 값을 사용하는 방법이다.
- 빨간색을 16진수로 표현하려면 아래처럼 사용한다.
p {
color: #ff0000;
}
1-3-5. opacity 속성(투명도)
- opacity 속성을 사용하여 글자나 요소의 전체 투명도를 조절할 수 있다.
- 글자의 투명도를 50%로 설정하려면 아래처럼 사용한다.
p {
color: red;
opacity: 0.5;
}
1-4. 요소의 유형 변경
1-4-1. CSS의 display 속성
HTML 요소의 표시 방법을 결정하는 중요한 속성 중 하나다. 요소의 유형을 변경하거나 요소의 레이아웃을 조절할 수 있다.
1) none : 이 속성값을 사용하면 요소를 화면에 표시하지 않는다. 내용이 보이지 않을 뿐만 아니라 요소가 차지해야 할 공간도 사라진다.
.hidden-element {
display: none;
}
2) block : 요소를 블록 레벨 요소로 만든다. 블록 레벨 요소는 자신이 속한 영역의 가로길이를 통째로 차지하며, 영역이 줄어들면 요소의 가로길이도 줄어든다.
.block-element {
display: block;
}
3) inline : 요소를 인라인 요소로 만든다. 인라인 요소는 콘텐츠의 크기만큼만 공간을 차지하는 요소로, 자신이 표시할 콘텐츠를 위해 필요한 공간 외에는 사용하지 않는다.
.inline-element {
display: inline;
}
4) inline-block : 요소를 인라인 요소로 표시하되, 블록 레벨의 특성을 추가한다. 요소는 인라인처럼 나란히 표시되지만 블록처럼 크기 조절이 가능하다.
.inline-block-element {
display: inline-block;
}
5) flex : 요소를 블록 레벨 요소로 표시하되, 내부 레이아웃 방식을 flex로 변경한다. 이를 사용하면 플렉스 박스 레이아웃을 적용할 수 있다.
6) inline-flex : 요소를 인라인 요소로 표시하되, 내부 레이아웃 방식을 flex로 변경한다.
1-4-2. flex 레이아웃
CSS에서 요소의 배치와 정렬을 효율적으로 다룰수 있도록 도와주는 레이아웃 방식이다. flex 레이아웃을 사용하려면 부모요소(플렉스 컨테이너)와 그 안에 포함된 자식 요소(플렉스 아이템)를 지정해야 한다.
display: flex로 플렉스 컨테이너 생성
1) display : flex 속성을 부모 요소에 적용하면 그 부모 요소는 플렉스 컨테이너가 된다. 이제 플렉스 컨테이너 안에 있는 자식 요소들을 배치하고 정렬할 수 있다.
.flex-container {
display: flex;
flex-direction: row; /* 주축 방향 설정 */
justify-content: space-between; /* 주축을 따라 요소들 사이의 간격을 최대로 설정 */
align-items: center; /* 교차축을 따라 요소들을 중앙 정렬 */
}
flex-direction으로 주축 설정
1) flex-direction 속성을 사용하여 주축(main axis)을 설정한다. 주축은 요소들이 배열되는 방향을 나타낸다.
.inline-flex-container {
display: inline-flex;
flex-direction: column; /* 주축 방향을 세로로 설정 */
align-items: flex-start; /* 교차축을 따라 요소들을 시작 부분에 정렬 */
}
- row : 요소들을 왼쪽에서 오른쪽으로 나열(기본값)
- row-reverse : 요소들을 오른쪽에서 왼쪽으로 나열
- column : 요소들을 위에서 아래로 나열
- column-reverse : 요소들을 아래에서 위로 나열
justify-content와 align-items로 정렬
1) justify-content 속성은 주축(main axis)을 따라 요소들을 정렬한다. 이로서 요소들을 수평 방향으로 정렬할 수 있다.
2) align-items 속성은 교차축(cross axis)을 따라 요소들을 정렬한다. 이로서 요소들을 수직 방향으로 정렬할 수 있다.
flex-grow와 flex-shrink로 요소 크기 조절
1) flex-grow 속성을 사용하여 요소의 확장 비율을 설정할 수 있다. 이를 통해 요소의 크기가 화면 공간에 따라 조절한다.
2) flex-shrink 속성은 요소의 축소비율을 설정한다. 이를 사용하면 화면 공간이 부족할 때 요소가 얼마나 줄어들지를 조절할 수 있다.
<!DOCTYPE html>
<html>
<head>
<style>
.flex-container {
display: flex;
flex-direction: row; /* 주축 방향 설정 */
justify-content: space-between; /* 주축을 따라 요소들 사이의 간격을 최대로 설정 */
align-items: center; /* 교차축을 따라 요소들을 중앙 정렬 */
}
.flex-item {
flex: 1; /* 모든 요소가 동일한 비율로 확장/축소 */
padding: 10px;
background-color: #ccc;
}
</style>
</head>
<body>
<div class="flex-container">
<div class="flex-item">Item 1</div>
<div class="flex-item">Item 2</div>
<div class="flex-item">Item 3</div>
</div>
</body>
</html>
'웹 서비스 개발(FB,BE,SERVER,DB) > HTML & CSS' 카테고리의 다른 글
9. 동작반응 (0) | 2024.01.31 |
---|---|
8.CSS_활용 (1) | 2024.01.26 |
6. CSS_Box Model (0) | 2024.01.21 |
5. CSS (Cascading Style Sheets) (0) | 2024.01.21 |
4. HTML 멀티미디어 (0) | 2024.01.21 |
댓글