연습문제1~3

1. quiz-1.html에는 <div> 영역 안에 텍스트가 표시되어 있습니다. 다음 조건에 맞는 스타일 속성을 <div>영역의 스타일에 추가하세요.

1. <div> 영역에 적용한 .container 스타일을 수정합니다.
2. 배경 색은 rgba 표기법을 사용하고 파란색에 불투명도를 0.2로 합니다.
3. 기존 테두리 색(#ccc)을 파란색(blue)으로 바꿉니다.
<!doctype html>
<html lang="ko">
  <head>
    <meta charset="utf-8">
    <title>배경 스타일</title>
    <style>
			body {
				font-family: "맑은 고딕", 돋움;
			}
			.container {
				width:500px;
				padding:10px;
				border:1px solid #ccc;
			}
			h1 {
				font-size: 17px;
			}

			p {
				font-size: 16px;
				line-height: 25px;
			}
    </style>
  </head>
  <body>
		<div class="container">
			<h1>웹 디자인 트렌드를 따라잡는 비법 대공개!</h1>
			<p>그래픽 프로그램으로 웹 디자인 요소를 일일이 만들어 웹사이트를 제작하는 시대는 지났다. 이제 모바일, 태블릿, PC 등 멀티 디바이스에 한 번에 적용할 수 있는 웹 디자인 방법을 알아야 한다. 바로 <b>코딩을 이용한 웹 디자인</b>이다. </p>		
		</div>
  </body>
</html>

<!doctype html>
<html lang="ko">
  <head>
    <meta charset="utf-8">
    <title>배경 스타일</title>
    <style>
			body {
				font-family: "맑은 고딕", 돋움;
			}
			.container {
				background-color: rgba(0, 0, 255, 0.2);
				width:500px;
				padding:10px;
				border:1px solid blue;
			}
			h1 {
				font-size: 17px;
			}

			p {
				font-size: 16px;
				line-height: 25px;
			}
    </style>
  </head>
  <body>
		<div class="container">
			<h1>웹 디자인 트렌드를 따라잡는 비법 대공개!</h1>
			<p>그래픽 프로그램으로 웹 디자인 요소를 일일이 만들어 웹사이트를 제작하는 시대는 지났다. 이제 모바일, 태블릿, PC 등 멀티 디바이스에 한 번에 적용할 수 있는 웹 디자인 방법을 알아야 한다. 바로 <b>코딩을 이용한 웹 디자인</b>이다. </p>		
		</div>
  </body>
</html>

 

 

2. quiz-2.html에는 <div> 영역에 연한 파란색의 배경 색이 적용되어 있습니다. 이 영역 위에 마우스 커서를 올려 놓았을 때의 스타일을 바꾸려고 합니다. 다음 조건에 맞게 스타일을 추가하세요.

1. <div> 영역에 마우스 커서를 올려 놓았을 때의 색상이므로 .container:hover 스타일을 추가합니다.
2. 배경 색은 파란색(blue)로 바꿉니다.
3. 글자 색은 흰색으로 바꿉니다.
<!doctype html>
<html lang="ko">
  <head>
    <meta charset="utf-8">
    <title>배경 스타일</title>
    <style>
			body {
				font-family: "맑은 고딕", 돋움;
			}
			.container {
				width:500px;
				padding:10px;
				border:1px solid blue;
				background:rgba(0,0,255,0.2);
			}
			h1 {
				font-size: 17px;
			}

			p {
				font-size: 16px;
				line-height: 25px;
			}
    </style>
  </head>
  <body>
		<div class="container">
			<h1>웹 디자인 트렌드를 따라잡는 비법 대공개!</h1>
			<p>그래픽 프로그램으로 웹 디자인 요소를 일일이 만들어 웹사이트를 제작하는 시대는 지났다. 이제 모바일, 태블릿, PC 등 멀티 디바이스에 한 번에 적용할 수 있는 웹 디자인 방법을 알아야 한다. 바로 <b>코딩을 이용한 웹 디자인</b>이다. </p>			
		</div>
  </body>
</html>

<!doctype html>
<html lang="ko">
  <head>
    <meta charset="utf-8">
    <title>배경 스타일</title>
    <style>
			body {
				font-family: "맑은 고딕", 돋움;
			}
			.container {
				width:500px;
				padding:10px;
				border:1px solid blue;
				background:rgba(0,0,255,0.2);
			}
			.container:hover {
				background: rgb(0,0,255);
				color: white;
			}
			h1 {
				font-size: 17px;
			}

			p {
				font-size: 16px;
				line-height: 25px;
			}
    </style>
  </head>
  <body>
		<div class="container">
			<h1>웹 디자인 트렌드를 따라잡는 비법 대공개!</h1>
			<p>그래픽 프로그램으로 웹 디자인 요소를 일일이 만들어 웹사이트를 제작하는 시대는 지났다. 이제 모바일, 태블릿, PC 등 멀티 디바이스에 한 번에 적용할 수 있는 웹 디자인 방법을 알아야 한다. 바로 <b>코딩을 이용한 웹 디자인</b>이다. </p>			
		</div>
  </body>
</html>

3. quiz-3.html에는 텍스트 한 줄이 표시되어 있습니다. 사각 영역에 배경 이미지를 채우고 텍스트 부분에도 배경 색을 넣어 결과 화면처럼 만들어 보세요.

1. 영역 전체를 감싸는 스타일은 .container이고 텍스트 영역을 감싸는 스타일은 .content입니다.
2. 영역 전체에 배경 이미지(images/apple.bg.jpg)를 삽입하는데 반복하지 않고 영역 전체를 덮을 수 있도록 합니다(.container 스타일 속성에 추가).
3. 배경 이미지를 추가하면 텍스트가 눈에 잘 띄지 않습니다. 텍스트 영역에 흰색 배경을 깔되 너무 진하지 않게 불투명도(alpha 값)를 0.5로 지정합니다(.content 스타일 속성 추가).
<!doctype html>
<html lang="ko">
  <head>
    <meta charset="utf-8">
    <title>배경 스타일</title>
    <style>
			body {
				font-family: "맑은 고딕", 돋움;
			}
			.container {
				position: relative;
				width: 600px;
				height: 400px;
				padding: 20px;
				border: 1px solid #ccc;
			}

			.content {
				position: absolute;
				top: 300px;
				width: 90%;
				padding: 10px;
			}

			h1 {
				font-size: 30px;
				text-align: center;
			}

			p {
				font-size: 16px;
				line-height: 25px;
			}
    </style>
  </head>
  <body>
		<div class="container">
			<div class="content">
				<h1>하루 한 알의 사과는 의사를 멀리 한다</h1>
			</div>
		</div>
  </body>
</html>

<!doctype html>
<html lang="ko">
  <head>
    <meta charset="utf-8">
    <title>배경 스타일</title>
    <style>
			body {
				font-family: "맑은 고딕", 돋움;
			}
			.container {
				background: no-repeat;
				background-position: 100% 100%;
				position: relative;
				width: 600px;
				height: 400px;
				padding: 20px;
				border: 1px solid #ccc;
			}

			.content {
				background: rgba(255, 255, 255, 0.5);
				position: absolute;
				top: 300px;
				width: 90%;
				padding: 10px;
			}

			h1 {
				font-size: 30px;
				text-align: center;
			}

			p {
				font-size: 16px;
				line-height: 25px;
			}
    </style>
  </head>
  <body>
		<div class="container">
			<img src="images/apple-bg.jpg">
			<div class="content">
				<h1>하루 한 알의 사과는 의사를 멀리 한다</h1>
			</div>
		</div>
  </body>
</html>

'HTML > 색상과 배경을 위한 스타일' 카테고리의 다른 글

색상과 배경을 위한 스타일  (0) 2021.08.14

웹 문서에는 문서 전체뿐 아니라 특정 부분이나 글자 등 여러 요소에 배경을 넣을 수 있는데, 배경에는 단순한 색상이나 이미지를 사용할 수도 있습니다. 또한 그러데이션을 넣거나 색의 투명도도 조절할 수 있습니다.

 

 

웹에서 색상 표현하기

16진수 표기법

#ffff00처럼 # 기호 다음에 6자리의 16진수로 표시하는 것으로 가장 기본적인 방법입니다.

#RRGGBB형식으로 표시하며, 두자리씩 중복될 경우 #ff0로 줄여서 표기할 수 있습니다.

 

rgb와 rgba표기법

기본형 설명
rgb(red 값, green 값, blue 값); 빨간색, 초록색, 파란색의 양을 나타낸다
rgba(red 값, green 값, blue 값, alpha 값); 빨간색, 초록색, 파란색, 불투명도값을 나타내며 1은 완전 불투명한 값이고 0은 투명한 값입니다.

hsl과 hsla 표기법

기본형 설명
hsl(<hue 값>, <saturation 값>, <lightness 값>); hue는 각도, saturation은 채도로 %로 표시하고 아무것도 섞이지 않은 상태가 채도가 높다. , lightness는 밝기로 %로 표시하며 높을수록 밝다.
hsla(<hue 값>, <saturation 값>, <lightness 값>, <alpha 값>); 앞의 세 값은 위와 같고 alpha는 불투명도를 나타낸다.

색상 이름 표기법

모든 브라우저에서 표현할 수 있는 색상을 웹 안전 색상이라고 하며 기본 16가지 색상을 포함해 모두 216가지입니다.

 

 

배경 색과 배경 이미지

background-color 속성

배경 색 지정하기

기본형 설명
background-color: <색상> 16진수, rgb값 또는 색상 이름을 사용해 지정합니다.

배경 색 스타일과 상속

글꼴이나 글자 크기 등은 <body>태그 선택자에서 지정하면 문서 전체에 상속되므로 하위 요소에서 스타일을 수정하지 않는 한, 문서 전체에 똑같이 적용되었으나, 예외적으로 background-color값은 상속되지 않습니다.

* 배경의 기본색은 투명색(transparent)입니다.

 

background-clip 속성

배경 적용 범위 조절하기

박스 모델 관점에서 배경 적용 범위를 조절할 수 있다. 박스 모델의 가장 외곽인 테두리(border)까지 적용할지, 테두리를 빼고 (padding) 범위까지 적용할지, 아니면 내용 부분에만 적용할지 선택할 수 있습니다.

기본형 설명
background-clip: border-box 박스 모델의 가장 외곽인 테두리(border)까지 적용합니다.
background-clip: padding-box 박스 모델에서 테두리를 뺀 패딩(padding) 범위까지 적용합니다.
background-clip: content-box 박스 모델에서 내용 부분에만 적용합니다.

background-image 속성

웹 요소에 배경 이미지 넣기

웹 요소에 배경 이미지 넣기 배경 이미지는 웹에서 사용 가능한 파일인 jpg, gif, png 파일을 사용하며 이것을 'url(파일 경로)'형식으로 사용합니다.

기본형 설명
body {background-image: url('bg1.png');}
#area {background-image: url('bg2.png');}
배경 이미지는 여러 개를 사용할 수 있는데 이럴 경우, 첫 번째 이미지부터 순서대로 표시합니다.

background-repeat속성

배경 이미지 반복 방법 지정하기

배경 이미지를 반복하지 않게 할 수도 있고 반복하더라도 가로 반복이나 세로 반복 등 반복 방향을 지정할 수 있습니다.

기본형 설명
background-repeat : repeat 브라우저 화면에 가득 찰 때까지 배경이미지를 가로와 세로로 반복합니다.
background-repeat : repeat-x 브라우저 창 너비와 같아질 때까지 배경 이미지를 가로로 반복합니다.
background-repeat : repeat-y 브라우저 창 높이와 같아질 때까지 배경 이미지를 세로로 반복합니다.
background-repeat : no-repeat 배경 이미지를 한 번만 표시하고 반복하지 않습니다.

background-size 속성

배경 이미지 크기 조절하기

기본형 설명
background-size: auto 원래 배경 이미지만큼 표시됩니다.
background-size: contain 요소 안에 배경 이미지가 다 들어오도록 이미지를 확대/축소합니다.
background-size: cover 배경 이미지로 요소를 모두 덮도록 이미지를 확대/축소합니다.
background-size: <크기 값> 너비 값과 높이 값을 지정합니다. 너비 값만 지정할 경우, 원래 배경 이미지 크기를 기준으로 축소/확대 비율을 자동으로 계산해 높이 값을 지정합니다.
background-size: <백분율> 배경 이미지가 들어갈 요소의 크기를 기준으로 백분율 값을 지정하고 그 크기에 맞도록 배경이미지를 확대하거나 축소합니다.

background-position 속성

배경 이미지 위치 조절하기

기본형 설명
background-position: <수평 위치> <수직 위치>; 수평 위치 값과 수직 위치 값을 함께 표시
수평 위치 : left | center | right | <백분율> | <길이 값> 수평 위치에 들어갈 수 있는 값
수직 위치 : top | center | bottom | <백분율> | <길이 값> 수직 위치에 들어갈 수 있는 값

 

background-origin 속성

배경 이미지 배치할 기준 조절하기

기본형 설명
background-origin: border-box  박스 모델의 가장 외곽인 테두리(border)가 기준이 된다.
background-origin: padding-box  박스 모델에서 테두리를 뺀 패딩(padding)이 기준이 된다.
background-origin: content-box 박스 모델에서 내용 부분이 기준이 됩니다.

 

background-attachment속성

배경 이미지 고정하기

기본형 설명
background-attachment: scroll 화면 스크롤과 함께 배경 이미지도 스크롤됩니다.
background-attachment: fixed 화면이 스크롤되더라도 배경 이미지는 고정됩니다.

background 속성

속성 하나로 배경 이미지 제어하기

background:url('images/bg3.jpg') no-repeat fixed right bottom;

속성 속성 값
background-image url('images/bg3.jpg')
background-repeat no-repeat
background-attachment fixed
background-position right bottom
background-clip border-box
background-origin padding-box
background-size auto

축약형의 다양한 속성 확인하는 사이트

https://www.w3.org/TR/css-backgrounds-3/#background

 

CSS Backgrounds and Borders Module Level 3

Abstract This draft contains the features of CSS relating to borders and backgrounds. The main extensions compared to level 2 are borders consisting of images, boxes with multiple backgrounds, boxes with rounded corners and boxes with shadows. CSS is a la

www.w3.org

 

 

 

그라데이션 효과로 배경 꾸미기

그라데이션 브라우저 접두사

접두사 브라우저 버전
-webkit- 사파리 5.1~6.0
-moz- 파이어폭스 3.6 ~ 15
-o- 오페라 11.1 ~ 12.0
<style>
	.grad {
    	background : blue;
        background : -webkit-linear-gradient(left top, blue, white);
        background : -moz-linear-gradient(right bottom, blue, white);
        background : -o-linear-gradient(right bottom, blue, white);
        background : linear-gradient(to right bottom, blue, white);
    }
</style>

 

선형 그라데이션

기본형 설명
linear-gradient( <각도> to <방향>, volor-stop, [color-stop,...]); 그라데이션의 방향을 설정한다., 색상의 수(한개면 단색)

 

방향

그라데이션의 방향을 지시할 때는 끝 지점을 기준으로 'to'키워드와 함께 사용합니다.

background: linear-gradient(to right bottom, blue, white);와 같이 사용합니다.

속성 값 설명
to top 아래에서 시작해 위로 그라데이션이 만들어집니다.
to left 오른쪽에서 시작해 왼쪽으로 그라데이션이 만들어집니다.
to right 왼쪽에서 시작해 오른쪽으로 그라데이션이 만들어집니다.
to bottom 위에서 시작해 아래로 그라데이션이 만들어집니다.

각도

기본형 설명
background: linear-gradient(45deg, #ff0000, #ffffff); 각도는 위가0deg, 오른쪽이 90deg, 아래가 180deg, 왼쪽이 270deg입니다.(시계방향)

색상 중지 점(color-stop)

선형 그라데이션을 만들기 위해서는 바뀌는 부분의 색을 지정해주어야 하는데, 바뀌는 지점을 색상 중지점이라고 합니다.

기본형 설명
background: linear-gradient(to bottom, #06f, white 30%, #06f); 방향, 시작색, 중지 점 색상과 위치, 끝색

원형 그라데이션

기본형 설명
radial-gradient( <최종 모양> 크기 at <위치> color-stop, [color-stop...]) 원이나 타원의 중심부터 동심원을 그리며 바깥 방향으로 색상이 바뀝니다.
background: radial-gradient(circle, white, yellow, red); 모양 크기 at 위치, color-stop, color-stop, color-stop

위치

그라데이션이 시작하는 원의 중심도 지정할 수 있습니다. '모양'과 '크기'속성 다음에 at키워드와 함께 위치값을 지정합니다. 사용할 수 있는 값은 키워드(left, center, right중 하나, top, center, bottom중 하나)입니다.

크기

1. closet-side 속성 값

가까운 모서리에 그라데이션 가장자리가 닿을 때 까지 그라데이션을 그립니다.

2.closest-corner

그라데이션 가장자리가 그라데이션 중심에서 가장 가까운 요소의 코너에 닿도록 합니다.

3. farthest-side

그라데이션 가장자리가 그라데이션 중심에서 가장 먼 모서리와 만나도록합니다.

4. farthest-corner

그라데이션 가장자리가 그라데이션 중심에서 가장 먼 코너에 닿도록 합니다.(기본값)

 

색상 중지 점(color-stop)

기본형 설명
background-radial-gradient(red, yellow 20%, skyblue); 색옆에 %값을 넣으면 그라데이션 조절 가능

그라데이션 반복 패턴 만들기

기본형 설명
background: repeating-linear-gradient(yellow, red 20px); 그라데이션을 반복한다.

문제 1~4

1. quiz-1.html에는 제목 아래에 여섯 개의 텍스트 문단이 있습니다. 각 문단의 하이픈(-) 앞에 있는 텍스트에 다음 조건을 따라 텍스트 스타일을 정의하고 적용하세요.

조건
1. 여러 텍스트에 적용하기 위해 class 선택자를 사용합니다.
2. 하이픈 앞에 있는 텍스트의 굵기를 '700'으로 설정합니다.
3. 하이픈 앞에 있는 텍스트의 크기는 상속한 글자 크기보다 한 단계 크게 지정합니다.
<!doctype html>
<html lang="ko">
  <head>
    <meta charset="utf-8">
    <title>텍스트 스타일</title>
    <style>
			.container {
				width:500px;
				padding:10px;
				border:1px solid #ccc;
			}
    </style>
  </head>
  <body>
		<div class="container">
			<h1>최신 웹 디자인 트렌드</h1>
			<p>반응형 웹 디자인 - 다양한 화면 크기에 최적화하다</p>
			<p>플랫 디자인 - 입체에서 평면으로 </p>
			<p>풀스크린 배경 - 콘텐츠에 집중</p>
			<p>원 페이지 사이트 - 한 페이지에 모든 내용을 담다</p>
			<p>패럴랙스 스크롤링 - 동적인 효과로 강한 인상을!</p>
			<p>웹 폰트 - 웹 타이포그래피를 받쳐주는 기술</p>
		</div>
  </body>
</html>

<!doctype html>
<html lang="ko">
  <head>
    <meta charset="utf-8">
    <title>텍스트 스타일</title>
    <style>
			.container {
				width:500px;
				padding:10px;
				border:1px solid #ccc;
			}
			p a{
				font-weight: 700;
				font-size : large;
			}
    </style>
  </head>
  <body>
		<div class="container">
			<h1>최신 웹 디자인 트렌드</h1>
			<p><a>반응형 웹 디자인</a> - 다양한 화면 크기에 최적화하다</p>
			<p><a>플랫 디자인</a> - 입체에서 평면으로 </p>
			<p><a>풀스크린 배경</a> - 콘텐츠에 집중</p>
			<p><a>원 페이지 사이트</a> - 한 페이지에 모든 내용을 담다</p>
			<p><a>패럴랙스 스크롤링</a> - 동적인 효과로 강한 인상을!</p>
			<p><a>웹 폰트</a> - 웹 타이포그래피를 받쳐주는 기술</p>
		</div>
  </body>
</html>

 

 

2. quiz-2.html에는 순서 없는 목록이 포함되어 있습니다. 다음 조건에 맞게 목록 스타일을 정의하고 적용하세요.

조건
1. 순서 없는 목록의 불릿을 없앱니다.
2. 각 항목의 줄 간격을 글자 크기의 두배로 지정합니다.
3. 각 항목에서 진하게 표시되는 부분의 글자색을 #ad3000으로 수정합니다.
<!doctype html>
<html lang="ko">
  <head>
    <meta charset="utf-8">
    <title>텍스트 스타일</title>
    <style>
			.container {
				width:500px;
				padding:10px;
				border:1px solid #ccc;
			}
			.subject {
				font-weight:700;
				font-size:larger;
			}
    </style>
  </head>
  <body>
		<div class="container">
			<h1>최신 웹 디자인 트렌드</h1>
			<ul>
				<li><span class="subject">반응형 웹 디자인</span> - 다양한 화면 크기에 최적화하다</li>
				<li><span class="subject">플랫 디자인 </span> - 입체에서 평면으로 </li>
				<li><span class="subject">풀스크린 배경 </span> - 콘텐츠에 집중</li>
				<li><span class="subject">원 페이지 사이트 </span> - 한 페이지에 모든 내용을 담다</li>
				<li><span class="subject">패럴랙스 스크롤링 </span> - 동적인 효과로 강한 인상을!</li>
				<li><span class="subject">웹 폰트 </span> - 웹 타이포그래피를 받쳐주는 기술</li>
			</ul>
		</div>
  </body>
</html>

<!doctype html>
<html lang="ko">
  <head>
    <meta charset="utf-8">
    <title>텍스트 스타일</title>
    <style>
			.container {
				width:500px;
				padding:10px;
				border:1px solid #ccc;
			}
			.subject {
				list-style-type: none;
				font: 100%/200% bold;
				font-weight:700;
				font-size:larger;
				color: #ad3000;
			}
    </style>
  </head>
  <body>
		<div class="container">
			<h1>최신 웹 디자인 트렌드</h1>
			<ul>
				<li><span class="subject">반응형 웹 디자인</span> - 다양한 화면 크기에 최적화하다</li>
				<li><span class="subject">플랫 디자인 </span> - 입체에서 평면으로 </li>
				<li><span class="subject">풀스크린 배경 </span> - 콘텐츠에 집중</li>
				<li><span class="subject">원 페이지 사이트 </span> - 한 페이지에 모든 내용을 담다</li>
				<li><span class="subject">패럴랙스 스크롤링 </span> - 동적인 효과로 강한 인상을!</li>
				<li><span class="subject">웹 폰트 </span> - 웹 타이포그래피를 받쳐주는 기술</li>
			</ul>
		</div>
  </body>
</html>

 

 

3. quiz-3.html에는 문서의 제목으로 사용할 '최신 웹 디자인 트렌드'라는 텍스트가 표시됩니다. 배경색이 짙기 때문에 제목 텍스트가 제대로 보이지 않는데 다음과 같은 조건에 맍고하도록 제목 텍스트의 스타일을 정의하고 적용하세요.

<!doctype html>
<html lang="ko">
  <head>
    <meta charset="utf-8">
    <title>텍스트 스타일</title>
    <style>
			.container {
				width:500px;
        height:50px;
        margin:0 auto;
				background-color:#444;
			}    
    </style>
  </head>
  <body>
    <div class="container">
      <h1>최신 웹 디자인 트렌드</h1>
    </div>
  </body>
</html>

<!doctype html>
<html lang="ko">
  <head>
    <meta charset="utf-8">
    <title>텍스트 스타일</title>
    <style>
			.container {
				width:500px;
        height:50px;
        margin:0 auto;
				background-color:#444;
        text-align: center;
			}    
      h1 {
        color:#fff;
        text-shadow: 3px 2px 5px #000;
      }
    </style>
  </head>
  <body>
    <div class="container">
      <h1>최신 웹 디자인 트렌드</h1>
    </div>
  </body>
</html>

4. quiz-4.html에는 <h1> 태그를 사용한 제목과 두 개의 텍스트 문단이 있습니다. 다음 조건에 맞게 텍스트 스타일을 정의하고 적용하세요.

1. 문서 전체의 글꼴은 "맑은 고딕"으로 하고 "맑은 고딕"이 없을 경우, "돋움"을 사용합니다.
2. h1 제목의 글자 크기는 17px로 합니다.
3. p 텍스트 문단의 글자 크기는 16px로 하고 줄 간격은 25px로 지정합니다.
4. accent라는 클래스 선택자를 만들어 '글자를 굵게, 색상은 red'로 지정합니다.
5. 두 번째 텍스트 문단의 첫 번째 문장("이 책은~ 기획되었다.")에 .accent 클래스 스타일을 적용합니다.
<!doctype html>
<html lang="ko">
  <head>
    <meta charset="utf-8">
    <title>텍스트 스타일</title>
    <style>
			.container {
				width:750px;
				padding:10px;
				border:1px solid #ccc;
			}
			.book-img {
				float:left;
				padding:10px;
				margin-right:20px;
			}
			.book-desc {
				padding:10px;
			}
    </style>
  </head>
  <body>
		<div class="container">
			<div class="book-img">
				<img src="images/book.png" alt="">
			</div>
			<div class="book-desc">
				<h1>웹 디자인 트렌드를 따라잡는 비법 대공개!</h1>
				<p>그래픽 프로그램으로 웹 디자인 요소를 일일이 만들어 웹사이트를 제작하는 시대는 지났다. 이제 모바일, 태블릿, PC 등 멀티 디바이스에 한 번에 적용할 수 있는 웹 디자인 방법을 알아야 한다. 바로 코딩을 이용한 웹 디자인이다. </p>
				<p><span class="accent">이 책은 HTML과 CSS에 대한 기초적인 내용만 알고 있다면 누구든 쉽게 코딩으로 여러 기기에 대응할 수 있는 웹 디자인을 만들 수 있도록 기획되었다.</span> jQuery를 몰라도 된다. jQuery 플러그인을 가져다 사용할 수 있는 방법을 소스 한 줄 한 줄 자세하고 친절하게 설명해 놓았으니까!</p>			
				<p><a href="http://www.easyspub.co.kr/20_Menu/BookView/A001/65" target="_blank">[책 자세히 보기]</a></p>
			</div>
		</div>
  </body>
</html>

<!doctype html>
<html lang="ko">
  <head>
    <meta charset="utf-8">
    <title>텍스트 스타일</title>
    <style>
			body {
				font-family: "맑은 고딕", 돋움;
			}
			h1 {
				font-size:17px;
			}
			p {
				font-size:16px;
				line-height:25px;
			}
			.accent {
				font-weight:bold;
				color:red;
			}
			.container {
				width:750px;
				padding:10px;
				border:1px solid #ccc;
			}
			.book-img {
				float:left;
				padding:10px;
				margin-right:20px;
			}
			.book-desc {
				padding:10px;
			}
    </style>
  </head>
  <body>
		<div class="container">
			<div class="book-img">
				<img src="images/book.png" alt="">
			</div>
			<div class="book-desc">
				<h1>웹 디자인 트렌드를 따라잡는 비법 대공개!</h1>
				<p>그래픽 프로그램으로 웹 디자인 요소를 일일이 만들어 웹사이트를 제작하는 시대는 지났다. 이제 모바일, 태블릿, PC 등 멀티 디바이스에 한 번에 적용할 수 있는 웹 디자인 방법을 알아야 한다. 바로 코딩을 이용한 웹 디자인이다. </p>
				<p><span class="accent">이 책은 HTML과 CSS에 대한 기초적인 내용만 알고 있다면 누구든 쉽게 코딩으로 여러 기기에 대응할 수 있는 웹 디자인을 만들 수 있도록 기획되었다.</span> jQuery를 몰라도 된다. jQuery 플러그인을 가져다 사용할 수 있는 방법을 소스 한 줄 한 줄 자세하고 친절하게 설명해 놓았으니까!</p>			
				<p><a href="http://www.easyspub.co.kr/20_Menu/BookView/A001/65" target="_blank">[책 자세히 보기]</a></p>
			</div>
		</div>
  </body>
</html>

'HTML > 텍스트 관련 스타일' 카테고리의 다른 글

텍스트 관련 스타일  (0) 2021.08.12

글꼴 관련 스타일

내용에 맞는 글꼴과 글자 크기, 굵기와 이탤릭체 여부 등 글자에서 바꿀 수 있는 글꼴 속성을 알아보고 선택할 수 있는 값이 어떤 것 이 있는가.

 

기본형 설명
font-family:<글꼴 이름>[,<글꼴 이름>, <글꼴 이름>]
/* p {font-family:;} */
속성값은 주로 큰따옴표를 사용한비다. 예를 들어 텍스트 글꼴을 지정할 때 "맑은 고딕"처럼 두 단어 이상으로 된 글꼴 이름이라면 따옴표로 묶어 표시합니다.
body { font-family:"맑은 고딕", 돋움, 굴림 웹 문서 전체에 맑은 고딕이라는 글꼴을 적용할 때 만약 "맑은고딕"글꼴이 없다면 "돋움"글꼴로 적용하고 그 글꼴마저 없다면 "굴림"글꼴로 적용하라는 의미입니다.

 

웹 문서에 포함된 텍스트들은 사용자의 글꼴을 이용해 웹 브라우저 화면에 표시됩니다.

만일 글꼴이 설치되어 있지 않은 경우 브라우저 기본값이 나타나 각각 다른 글꼴로 표시됩니다.

 

@font-face 속성

웹 폰트 사용하기

웹 폰트란 웹 문서를 작성할 때 웹 문서 안에 글꼴 정보도 함께 저장했다가 사용자가 웹 문서에 접속하면 글꼴을 사용자 시스템으로 다운로드시키는 방식입니다.

기본형 설명
@font-face {
        font-family:글꼴 이름;
        src:url(글꼴 파일 경로) format(파일 유형);
    }
영문 폰트를 eot파일과woff파일로 변환한 후 자신만의 글꼴 이름을 정의해서 사용할 수 있다.
ttf는 다른 형식의 파일보다 용량이 크기 때문에 대부분의 모던 브라우저에서 지원한swoff글꼴 파일을 먼저 선언하고 그 후에 없으면 ttf를 선언하는게 좋다.

 

 

font-size 속성

글자 크기 조절하기

기본형 설명
font-size: <절대 크기> | <상대 크기> | <크기> | <백분율> 픽셀이나 포인트를 비로해 크기를 여러 단위로 지정할 수 있고 백분율을 사용할 수도 있습니다.

font-size의 속성에서 사용하는 속성 값

속성 값 설명
<절대 크기> 브라우저에서 지정한 글자 크기입니다. xx-small | x-small | small | medium | large | x-large | x-large | xx-large를 사용할 수 있습니다.
<상대 크기> 부모 요소의 글자크기(font-size)를 기준으로 더 크게 표시하거나 더 작게 표시합니다. 사용할 수 있는 값은 larger | smaller입니다.
<크기> 브라우저와 상관없이 글자 크기를 직접 지정합니다.
<백분율> 부모 요소의 글자 크기를 기준으로 해당하는 %를 계산해 표시합니다(%와 함께 표기해야 합니다.)

font-size에서 크기를 지정할 때 사용하는 단위

단위 설명
em 해당 글꼴의 대문자 M의 너비를 기준으로 크기를 조절합니다. (많이 사용)
ex x-height(엑스 하이트). 해당 글꼴의 소문자 x의 높이를 기준으로 크기를 조절합니다.
px 픽셀. 모니터에 따라 상대적 크기가 됩니다. (많이사용)
pt 포인트. 일반 문서에 많이 사용하는 단위입니다.

 

기본형 설명
font-weight: normal 글자 굵기 기본 값
font-weight: bold | lighter | bolder 굵게 | 가늘게 | 더 굵게
font-weight: 100~900 400은 normal, 700은 bold로 세밀하게 조절 가능합니다.
font-variant: normal 일반적인 형태로 표시
font-variant: small-caps 작은 대문자로 표시

font 속성

글꼴을 한 번에 묶어 표현하기

font: <font-style><font-variant><font-weight><font-size/line-height><font-family> |
caption | icon | menu | menu | message-box | small-caption | status-bar

 

속성 값 설명
font-* font-로 시작하는 글꼴 관련 속성을 한꺼번에 나열합니다.
caption 캡션에 어울리는 글꼴 스타일로 표시합니다.
icon 아이콘에 어울리는 글꼴 스타일로 표시합니다.
menu 드롭다운 메뉴에 어울리는 글꼴 스타일로 표시합니다.
message-box 대화상자에 어울리는 글꼴 스타일로 표시합니다.
small-caption 작은 캡션에 어울리는 글꼴 스타일로 표시합니다.
status-bar 상태 표시줄에 어울리는 글꼴 스타일로 표시합니다.
p {font:16px/25px "맑은 고딕"}
p {font:bold italic 12pt}
p {font:120%/120% bold}

font:120%/120%일 때 글자 크기는 부모 요소를 따라가고, 줄 간격은 현재 요소의 글자크기를 기준으로 한다.

 

 

 

 

텍스트 스타일

텍스트 스타일은 글자와 단어들, 그리고 글자들로 이루어진 문단에서 사용되는 스타일입니다.

기본형 설명
color: <색상이름 | rgb | #000000(16진수)> 테스트에서 사용되는 글자 색을 바꿀 때 사용
text-decoration : none  밑줄을 표시하지 않습니다.
text-decoration : underline 밑줄을 표시합니다.
text-decoration : overline 영역 위로 선을 그립니다.
text-decortaion : line-through 영역을 가로지르는 선(취소 선)을 그립니다.
text-transform : none 변환하지 않습니다.
text-transform : capitalize 시작하는 첫 번째 글자를 대문자로합니다.
text-transform : uppercase 모든 글자를 대문자로 변환합니다.
text-transform : lowercase 모든 글자를 소문자로 변환합니다.
text-transform : full-width 가능한 모든 문자를 전각 문자로 변환합니다.
text-shadow : none |<가로 거리> <세로 거리> <번짐 정도> <색상> 텍스트에 그림자 효과도 줄 수 있습니다.
속성 값 설명
<가로 거리> 텍스트부터 그림자까지의 가로 거리를 입력합니다. 양수는 글자 오른쪽, 음수는 왼쪽(필수속성)
<세로 거리> 텍스트부터 그림자까지의 세로 거리를 입력합니다. 양수는 글자 아래쪽, 음수는 위쪽(필수속성)
<번짐 정도> 그림자가 번지는 정도를 나타냅니다. 양수는 그림자가 모든방향으로퍼지고 음수는 축소됩니다.
<색상> 그림자 색상을 지정합니다. 한 가지만 지정할 수 있고 공백으로 여러 색상을지정할 수도 있습니다.

white-space속성

공백 처리하기

속성 값 설명
white-space : normal 여러 개의 공백을 하나로 표시합니다.(기본값)
white-space : nowrap 여러개의 공백을 하나로 표시하고 영역 너비를 넘어가는 내용은 줄을 바꾸지 않고 계속 한 줄로 표시한다.
white-space : pre 여러개의 공백을 그대로 표시하고 영역너비를 넘어가는 내용은 줄을 바꾸지 않고 계속 한줄로 표시합니다.
white-space : pre-line 여러 개의 공백을 하나로 표시하고 영역너비를 넘어가는 내용은 자동으로 줄을 바꿔 표시합니다.
white-space : pre-wrap 여러 개의 공백을 그대로 표시하고 영역 너비를 넘어가는 내용은 자동으로 줄을 바꿔 표시합니다.

l

etter-spacing과 word-spacing 속성 

텍스트 간격 조절하기

기본형 설명
letter-spacing : normal | <크기> 낱 글자 사이 간격을 조절합니다.
word-spacing : normal | <크기> 단어와 단어사이의 간격을 조절합니다.

 

 

 

문단 스타일

텍스트 정렬이나, 들여 쓰기, 줄 간격 등을 조절합니다. 웹 문서에서 텍스트를 많이 사용한다면 반드시 익혀 두어야 합니다.

 

direction 속성 - 글자 쓰기 방향 지정하기

기본값 설명
direction : ltr 왼쪽에서 오른쪽으로(left-to-right)텍스트를 표시합니다.(기본값)
direction : rtr 오른쪽에서 왼쪽으로(right-to-left)텍스트를 표시합니다.

 

 

text-align속성

텍스트 정렬하는 방법을 지정합니다.

기본형 설명
text-align : start 현재 텍스트 줄의 시작 위치에 맞추어 문단을 정렬합니다.
text-align : end 현재 텍스트 줄의 끝 위치에 맞추어 문단을 정렬합니다.
text-align : left 왼쪽에 맞추어 문단을 정렬합니다.
text-align : right 오른쪽에 맞추어 문단을 정렬합니다.
text-align : center 가운데에 맞추어 문단을 정렬합니다.
text-align : justify 양쪽에 맞추어 문단을 정렬합니다.
text-align : match-parent 부모 요소를 따라 문단을 정렬합니다. 다만, 부모 요소의 start나 end일 경우, 부모요소가 ltr인지 rtl인지에 따라 left나 right값으로 계산해 적용합니다.

text-justify

정렬 시 공백 조절하기

기본형 설명
text-justify : auto 웹 브라우저에서 자동으로 지정합니다.
text-justify : none 정렬하지 않습니다.
text-justify : inter-word 단어 사이의 공백을 조절해 정렬합니다.
text-justify : distribute 인접한 글자 사이의 공백을 똑같이 맞추어 정렬합니다

text-indent

텍스트 들여 쓰기

기본형 설명
text-indent : <크기> 단위와 함께 들여 쓸 크기를 지정합니다.
text-indent : <백분율> 부모 요소의 너비를 기준으로 상대적 크기를 지정합니다.

line-height

줄 간격 조절하기

기본형 설명
line-height : normal 기본값입니다.
line-height : <숫자> 글자 크기를 기준으로 배수를 지정한다2.0이면 글자크기 2배
line-height : <크기> 단위와 함께 지정
line-height : <백분율> 글자 크기를 기준으로 배수를 지정한다. 보통 두배가 적당.

text-overflow

넘치는 텍스트 표기하기

기본형 설명
text-overflow : clip 넘치는 텍스트를 자릅니다.
text-overflow : ellipsis 말 줄임표로 잘린 텍스트가 있다고 표시합니다.

 

 

 

목록 스타일

메뉴 항목이 목록과 링크를 결합한 형태라고 할 수 있습니다.

 

list-style-type속성

기본형 설명
list-style-type : none 불릿을 없앱니다.
list-style-type : <순서 없는 목록의 불릿> 순서 없는 목록의 경우 목록앞에 다양한(bullet)을 넣을 수 있습니다.
list-style-type : <순서 목록의 번호> 순서 목록에서는 번호 스타일을 지정할 수 있습니다.

순서 없는 목록에서 불릿 모양 바꾸기

속성 값 설명
disc 채운 원
circle 빈 원
square 채운 사각형
none 불릿 없애기

순서 목록에서 숫자 바꾸기

속성 값 설명 예시
decimal 1로 시작하는 십진수 1, 2, 3, ...
decimal-leading-zero 앞에 0이 붙는 십진수 01, 02, 03, ... 10, 11
lower-roman 소문자 로마 숫자 i, ii, iii ...
upper-roman 대문자 로마 숫자 I, II, III, IV ...
lower-alpha 또는 lower-latin 소문자 알파벳 a, b, c, d, e, ...
upper-alpha 또는 upper-latin 대문자 알파멧 A, B, C, D, E ...
armenian 아르메니아 숫자  
georgian 조지 왕조시대의 숫자 an, ban, gan ...

list-style-image속성

불릿 대신 이미지 넣기

기본값 설명
list-style-image : none 이미지를 사용하지 않고 list-style-type속성에서 지정한 형태로 표시합니다.
list-style-image : <이미지> url("images.jpg")처럼 url() 키워드 안에 이미지 파일 경로를 지정합니다.

list-style-position

목록에 들여 쓰는 효과 내기

기본값 설명
list-style-position : isnide 불릿이나 숫자를 안쪽으로 들여 씁니다.
list-style-position : outside 기본 값으로 불릿이나 숫자를 밖으로 내어 씁니다

 

'HTML > 텍스트 관련 스타일' 카테고리의 다른 글

텍스트 관련 스타일 예제  (0) 2021.08.14

스타일과 스타일 시트

웹문서의 스타일(style)은 미리 약속한 스타일 속성을 입력해 웹을 디자인하는 것을 말하며 한 문서에 반복적으로 쓰이는 스타일을 모아 놓은 것을 '스타일 시트'라고 부릅니다.

 

스타일을 사용하는 이유는 HTML 문서에서 자주 사용하는 글꼴이나 색상, 정렬, 각 요소들의 배치 방법 등 문서의 겉모습을 결정짓는 내용들을 가리킵니다.

텍스트 단락에서 줄 간격을 조절하고 표의 테두리를 점선으로 바꾸는 것도 스타일로 정의가 가능합니다.

내용 변경없이 일괄적으로 스타일 변경이 가능해져서 유지보수가 쉬워집니다.

 

기본형 설명
p { text-align: center; } p는 선택자라고 부르며
text-align은 스타일 속성
center은 속성 값이다.

 

 

스타일과 스타일시트

웹 문서 안에는 여러 개의 스타일 규칙이 사용되는 경우가 많습니다. 이러한 스타일 규칙들을 한눈에 확인하고 필요할 때마다 수정하기도 쉽도록 한 군데 묶어 놓은 것을 '스타일 시트'라고 합니다.

 

내부 스타일시트

웹 문서 안에서 사용할 스타일을 문서 안에 정리한 것을 '내부 스타일 시트'라고 합니다.

모든 스타일 정보는 <head> 스타일 정보 </head> 식으로 정의해야 하고 <style> 스타일 정보 </style>식으로 작성합니다.

 

외부 스타일시트

디자인의 일관성을 위해 같은 스타일을 여러 웹 문서에 적용할 때 사용하는 방법입니다. 다운로드 시간을 줄여주며. css라는 확장자명을 사용합니다.

기본형 설명
<link rel="stylesheet" href="외부 스타일 파일 경로"> 외부 스타일 시트를 연결할 때는 <style> 태그 없이 <link> 태그만 사용해 미리 만들어 놓은 외부 스타일 시트파일을 연결합니다.

 

인라인 스타일(가급적 사용을 피해야 할 스타일)

간단한 스타일 정보라면 스타일 시트를 사용하지 않고 스타일을 적용할 대상에 직접 표시합니다.

스타일을 적용하고 싶은 부분이 있다면 해당 태그에 style속성을 사용해 style="속성:속성 값;"형태로 스타일을 바꿀 수 있습니다.

기본형 속성
<p style="color:blue;"> 블루베리는 항산화제인 ......</p> 대상에 스타일을 직접 지정

 

 

 

주요 선택자

스타일 속성을 적용하는 요소를 '선택자(selector)'라고 부릅니다. 태그 하나 혹은 여러 개를 묶어서 별도의 선택자로 지정할 수 있습니다.

 

 

전체 선택자

모든 요소에 스타일 적용하기

전체 선택자로는 *를 사용하며 문서의 여백이나 글꼴 크기 등 기본 스타일을 초기화할 때 사용합니다.

예를 들어 웹 문서를 브라우저에 표시할 때 브라우저 창에 바짝 붙지 않도록 문서 내용 바깥쪽에는 '마진'을 두고 문서 내용 안쪽에는 '패딩'이라는 여백을 두는데 이런 여백 때문에 디자인이 깔끔하지 않을 경우, 전체 선택자를 이용해 웹 문서 전체에 마진과 패딩 여백을 0으로 지정할 수 있습니다.

기본형 설명
* {속성:속성 값; 속성:속성 값; ...} 스타일을 모든 요소에 적용할때 사용

 

 

태그 선택자

특정 태그를 사용한 요소에 스타일 적용하기

전체 선택자 다음으로 많은 요소에 스타일을 적용하는 태그 선택자(tag selector)는 특정 태그가 쓰인 모든 요소에 스타일을 적용합니다.

기본형 설명
p {
    font-size: 12px; /* 글자 크기 */
    font-family: 돋움; /* 글꼴 */
}
특정 태그가 쓰인 모든 요소에 스타일을 적용할 때 사용

 

 

 

클래스 선택자

특정 부분에 스타일 적용하기

기본형 설명
.bluetext { /* .클래스 명 */
    color: blue; /* 스타일 */
}
특정부분에만 스타일을 적용한다.
클래스 이름 앞에는 반드시 마침표(.)을 붙여야 한다.
<span class="bluetext"> 도움 </span> <span>
텍스트 일부에만 클래스 스타일을 적용하고 싶을 때 사용
h2.accent {
    background-color:#222;
    color:#fff;
    padding:5px;
}
선택자 적용 범위 제한
한꺼번에 둘 이상의 클래스 스타일을 적용하기 위해서는 공백으로 구분해서 두 개의 스타일을 나란히 적습니다.
#container {
    ...
}
<div id="container">
id 선택자
특정 부분에 스타일 적용하기 마침표대신#으로 적용하며 문서에 한번만 적용가능 중복사용이 불가능하기 때문에 문서의 레이아웃과 관련된 스타일을 지정하거나 자바스크립트 프로그램에서 웹 요소들을 구 분하기 위해 사용한다.
h1, h2 {
    ...
}
그룹 선택자
둘 이상 요소에 같은 스타일 적용하기 따옴표(,)로 구분

 

 

 

캐스 케이싱 스타일 시트(CSS)

적용된 많은 스타일 중에 어떤 스타일을 나타낼지를 결정함을 뜻합니다.

브라우저에서 기본적으로 정해 놓은 스타일을 따를 수 있고 웹 제작자가 정해 놓은 스타일을 따를 수 있는데, 우선순위에 따라 달라집니다.

1. 스타일 우선순위 - 스타일 규칙의 중요도, 적용 범위에 따라 우선순위가 결정되고 
    그 우선순위에 따라 위에서 아래로 스타일이 적용됩니다
2. 스타일 상속 - 태그들의 포함 관계에 따라 부모 요소의 스타일을 자식 요소로, 위에서 아래로 전달합니다.

 

스타일의 우선순위는 세 가지 개념에 따라 지정됩니다.

1. 얼마나 중요한가(Importance)

스타일이 어디서 선언되었는가에 따라 달라집니다.

사용자 스타일 시트의 중요(! important) 스타일 > 제작자 스타일 시트의 중요 스타일 > 제작자 스타일 시트의 일반 스타일 > 기본적인 브라우저 스타일 시트

 

2. 적용 범위가 어디까지 인가?(Specificity)

스타일 적용 범위가 좁을수록 우선순위가 높아집니다.

인라인스타일 > id 스타일 > 클래스 스타일 > 태그 스타일

 

3.소스에서의 순서(Source Order)

중요도와 적용범위가 같다면, 나중에 온 스타일이 먼저온 스타일을 덮어씁니다.

 

 

스타일 상속

웹 문서에서 사용하는 여러 태그들은 서로 포함관계가 있는데 포함하는 태그를 부모 요소, 포함된 태그를 자식 요소라고 합니다. 자식 요소에서 별도로 스타일을 지정하지 않으면 부모 요소에 있는 스타일 속성들이 자식 요소로 전달되는데 이것을 '스타일 상속'이라고 합니다.

 

 

 

CSS3와 CSS 모듈

CSS3란? CSS3는 이전 CSS1, CSS2보다 정교하고 화려한 화면을 구성할 수 있게 되었습니다. CSS3부터는 배경이나 글꼴 박스 모델 등 수십 개 기능을 주제별로 규약을 따로 만들었는데 이것을 'CSS 모듈'이라고 합니다.

 모듈별로 진행 속도도 다르고 필요에 따라 새로운 모듈이 생기기 때문에 CSS3는 한번에 표준 규약이 결정되지 않습니다. 다시 말해 CSS3는 'CSS3 표준'이라고 하나로 묶어 말할 수 없고 계속 새로운 CSS모듈이 등장합니다.

https://www.w3.org/Style/CSS/ 사이트에 접속하면 관련 규약을 확인할 수 있습니다.

 

CSS3와 브라우저 접두사(prefix)

CSS3는 CSS 모듈들이 많고 표준 규약이 완성되지 않은 부분도 많지만 모던 브라우저에서 지원하기 위해 계속 개발되고 있습니다.

또한 표준 규약이 만들어졌더라도 이전 버전의 모던 브라우저 사용자를 고려해 계속 브라우저 접두사를 붙여 사용하기도 합니다.

기본형 설명
-webkit-column-count:3; 웹키트 방식 브라우저용(사파리, 크롬 등)
-moz-column-count:3; 게코 방식 브라우저용(모질라, 파이어폭스 등)
-o-column-count:3; 오페라 브라우저
-ms-column-count:3; 마이크로소프트 인터넷 익스플로러(잘 안쓰임)

 

퀴즈 1~2

1. 다음은 예약 페이지의 일부입니다. 04/quiz-1.html에는 '예약 정보'라는 제목만 표시되어 있습니다. 아래 폼 소스의 빈칸을 채우면서 04/quiz-1.html 문서에 폼을 추가하세요.

<!doctype html>
<html lang="ko">
<head>
	<meta charset="utf-8">
	<title>예약 접수</title>
	<style>
		ul {
			list-style:none;
		}
		li {
			line-height:50px;
		}
		label {
			width:60px;
			float:left;
		}
	</style>
</head>
<body>
	<h1>예약 정보</h1>

</body>
</html>
<!doctype html>
<html lang="ko">
<head>
	<meta charset="utf-8">
	<title>예약 접수</title>
	<style>
		ul {
			list-style:none;
		}
		li {
			line-height:50px;
		}
		label {
			width:60px;
			float:left;
		}
	</style>
</head>
<body>
	<h1>예약 정보</h1>
	<form>
		<ul>
			<li>
				<label for="r-name">이름</label>
				<input type="text" id="r-name">
			</li>
			<li>
				<label for="r-phone">휴대폰</label>
				<input type="text" id="r-phone">
			</li>
			<li>
				<label for="r-email">이메일</label>
				<input type="text" id="r-email">
			</li>
			<li>
			<input type="button" value="예약하기">
			</li>
		</ul>
	</form>
</body>
</html>

 

2. 04/quiz-2.html에 '프런트엔드 개발자 지원서'용 폼을 만들려고 한다. 다음 조건을 만족시키도록 <form> 태그와 </form> 태그 사이에 소스를 추가하세요.

<!doctype html>
<html lang="ko">
  <head>
    <meta charset="utf-8">
    <title>프런트엔드 개발자 지원서</title>
    <style>
			#container { 
				width:520px;
				border:1px solid black;
				padding:20px 40px;
				margin:0 auto;
			}
      fieldset { margin-bottom:15px; }
      legend { font-weight:bold; }
			ul {list-style-type: none;}
			li { line-height:30px;}
    </style>
  </head>
  <body>
		<div id="container">
			<h1>프런트엔드 개발자 지원서 </h1>
			<p>HTML, CSS, Javascript에 대한 기술적 이해와 경험이 있는 분을 찾습니다.</p>
			<hr>
			<form>
				
			</form>
		</div>
  </body>
</html>
<!doctype html>
<html lang="ko">
  <head>
    <meta charset="utf-8">
    <title>프런트엔드 개발자 지원서</title>
    <style>
			#container { 
				width:520px;
				border:1px solid black;
				padding:20px 40px;
				margin:0 auto;
			}
      fieldset { margin-bottom:15px; }
      legend { font-weight:bold; }
			ul {list-style-type: none;}
			li { line-height:30px;}
    </style>
  </head>
  <body>
		<div id="container">
			<h1>프런트엔드 개발자 지원서 </h1>
			<p>HTML, CSS, Javascript에 대한 기술적 이해와 경험이 있는 분을 찾습니다.</p>
			<hr>
			<form>
				<legend>개인정보</legend>
					<ul>
						<li>
							<label for="r-name">이름</label>
							<input type="text" id="r-name" placeholder="공백 없이 입력하세요.">
						</li>
						<li>
							<label for="r-phone">연락처</label>
							<input type="tel" id="r-phone">
						</li>
					</ul>
					<legend>지원 분야</legend>
					<ul>
						<li>
							<label><input type="radio" name="webp" value="webp">웹 퍼블리싱</label>
						</li>
						<li>
							<label><input type="radio" name="web-dev" value="web-dev">웹 애플리케이션 개발</label>
						</li>
						<li>
							<label><input type="radio" name="imp-dev" value="imp-dev">개발 환경 개선</label>
						</li>
					</ul>
					<legend>지원동기</legend><br>
						<label for="container" >
						<p><textarea name="" cols="60" rows="5" placeholder="본사 지원 동기를 간략히 써 주세요." ></textarea></p>
						<button>접수하기</button>
						<button>다시쓰기</button>
			</form>
		</div>
  </body>
</html>

'HTML > 폼 관련 태그들' 카테고리의 다른 글

폼 만들기  (0) 2021.08.05

연습문제 1~3

1. quiz-1.html문서에서 '이미지 삽입하기' 제목 아래 images 폴더에 있는 umbrella.jpg 이미지를 삽입하세요. 이때 이미지 크기가 크기 때문에 실제로 화면에 표시할 때는 320 x 210 크기로 줄여 사용하세요.

<!doctype html>
<html lang="ko">
<head>
	<meta charset="utf-8">
	<title>이미지 삽입하기</title>
</head>
<body>
	<h1>이미지 삽입하기</h1>
	<img src="images/umbrella.jpg" width="320" height="210" alt="umbrella">
</body>
</html>

2. quiz-2.html 문서의 '국내 포털 사이트 Daum으로 연결하기'라는 제목 아래에 'Daum'로고 이미지를 삽입하세요. 이미지 파일은 따로 제공하지 않으므로 Daum 사이트에서 로고 이미지 경로를 복사해 사용합니다.

<!doctype html>
<html lang="ko">
<head>
	<meta charset="utf-8">
	<title>링크 사용하기</title>
</head>
<body>
	<h1>포털 사이트 Daum으로 연결하기</h1>
	<img src="https://t1.daumcdn.net/daumtop_chanel/op/20200723055344399.png" width="180" height="94" id="daum" class="img_thumb" alt="Daum">
</body>
</html>

 

3. quiz-3.html의 다음 로고 이미지를 클릭했을 때 다음 사이트(http://www.daum.net)로 연결되도록 링크를 추가하세요. 다만 링크된 사이트는 새 창이나 새 탭에서 열리도록 합니다.

<!doctype html>
<html lang="ko">
<head>
	<meta charset="utf-8">
	<title>링크 사용하기</title>
</head>
<body>
	<h1>포털 사이트 Daum으로 연결하기</h1>
	<a href="https://www.daum.net/">
	<img src="http://icon.daumcdn.net/w/icon/1606/08/150737977.png" alt="Daum">
	</a>
</body>
</html>

'HTML > 이미지와 하이퍼링크' 카테고리의 다른 글

이미지와 하이퍼링크  (0) 2021.08.05

 

    <blockquote>인용내용</blockquote>

예제2-02

<!DOCTYPE html>
<html>
<head>
    <meta charset='utf-8'>
    <meta http-equiv='X-UA-Compatible' content='IE=edge'>
    <title>Page Title</title>
    <meta name='viewport' content='width=device-width, initial-scale=1'>
</head>
<body>
    <h3>로컬 스토리지(Local Storage)를 저장하는 함수 : </h3>
    <pre>
        function savetheLocal(){
            var second = document.getElementById("second");
            var thevalue = second.value;
            localStorage.setItem(1, thevalue);
            gettheLocal();
        }
    </pre>
</body>
</html>

예제 2-03

<!DOCTYPE html>
<html>
<head>
    <meta charset='utf-8'>
    <meta http-equiv='X-UA-Compatible' content='IE=edge'>
    <title>Page Title</title>
    <meta name='viewport' content='width=device-width, initial-scale=1'>
</head>
<body>
    <h2>제주 이색 여행지 - 이중섭 거리</h2>
    <p><strstrong>주말</strstrong>마다 <b> '서귀포문화예술디자인시장'</b>이 열립니다.</p>
    <p><em>'아트마켓'</em>이라고도 부르는데 <i>문화예술체험</i>이나 <i>공연관람
    </i>을 할 수도 있고 <br>작가들이 직접 만든 창작예술품 등을 판매하기도 합니다</p>
</body>
</html>

예제 2-04

<!DOCTYPE html>
<html>
<head>
    <meta charset='utf-8'>
    <meta http-equiv='X-UA-Compatible' content='IE=edge'>
    <title>Page Title</title>
    <meta name='viewport' content='width=device-width, initial-scale=1'>
</head>
<body>
    <h1>웹 접근성</h1>
    <p>웹의 창시자인 팀 버너스 리(Tim Berners-Lee)의 <q cite="http://www.w3.org/standards/webdesign/accessibility">
    웹의 힘은 보편성에 있다. 장애에 구애없이 모든 사람이 접근할 수 있는 것이 필수적인 요소이다. 
    </q>라는 말로 웹 접근성을 설명한다. </p>
</body>
</html>

웹브라우저의 크기에 따라 폭이 자동적으로 조절된다.

 

예제 2-05

<!DOCTYPE html>
<html>
<head>
    <meta charset='utf-8'>
    <meta http-equiv='X-UA-Compatible' content='IE=edge'>
    <title>Page Title</title>
    <meta name='viewport' content='width=device-width, initial-scale=1'>
</head>
<body>
    <h2>야외 텐트를 닮은 건축물 <mark>"테쉬폰"</mark></h2> <!--강조의 h2, 글자배경색 mark-->
    <p>아일랜드 출신 ...... 남아 있으며 <span style="color:blue;"">국내 근현대 건축사의 한 페이지를 보여주는
     가치를 지닌다.</span>고 전문가들은 평가합니다.</p>
</body>
</html>

 

 

기타 텍스트 관련 태그들

<!DOCTYPE html>
<html>
<head>
    <meta charset='utf-8'>
    <meta http-equiv='X-UA-Compatible' content='IE=edge'>
    <title>Page Title</title>
    <meta name='viewport' content='width=device-width, initial-scale=1'>
</head>
<body>
    <p><b><abbr title="Internet of Things">1. IoT</abbr></b>란
     각종 사물에 센서와 통신 기능을 내장해 인터넷에 연결하는 기술을 의미한다</p>
     <br>
     <p>2. 내가 경험한 가장 흥미진진한 일은 누군가를 만나는일이다 - 영화, <cite>'비포선셋' </cite> 중</p>
    <br>
    <pre><code> function savetheLocal(){ ...... }</code></pre>
    <br>
    <p>3. 웹 화면을 다시 불러오려면 <kbd>F5</kbd>키를 누릅니다.</p>
    <br>
    <p>4. 가격 : 13,000원<small>(부가세 별도)</small></p>
    <br>
    <p>5. 물의 화학식은 <b>H<sub>2</sub>0</b>다 </p>
    <br>
    <p>6. E = mc<sup>2</sup> </p>
    <br>
    <p><s>7. 34,000원</s><strong>19,000원</strong></p>
    <br>
    <p>8. 링크 표시 용도가 아니라 단순히 밑줄을 긋는다면 <u> u 태그</u></p>
</body>
</html>

 

목록을 만드는 태그

<!DOCTYPE html>
<html>
<head>
    <meta charset='utf-8'>
    <meta http-equiv='X-UA-Compatible' content='IE=edge'>
    <title>Page Title</title>
    <meta name='viewport' content='width=device-width, initial-scale=1'>
</head>
<body>
    <h1>관광 안내 전화</h1>
    <p>한국관광공사에서는  ......실시하고 있습니다.</p>
    <p>1330에는 ...... 이용 가능합니다.</p>
    <ul>
        <li>일반 전화 : (국번없이) 1330</li>
        <li>휴대 전화 : 064-1330</li>
    </ul>
</body>
</html>

 

예제2.ol.html

<!DOCTYPE html>
<html>
<head>
    <meta charset='utf-8'>
    <meta http-equiv='X-UA-Compatible' content='IE=edge'>
    <title>Page Title</title>
    <meta name='viewport' content='width=device-width, initial-scale=1'>
</head>
<body>
    <h1>1박 2일 가족 여행 코스</h1>
    <li>1일차
        <ol type="a">
            <li>해녀박물관</li>
            <li>낚시체험</li>
        </ol>
    </li>
    <li>2일차
        <ol type="a" start="3">
            <li>용눈이오름</li>
            <li>만장굴</li>
            <li>카약체험</li>
        </ol>
    </li>
</body>
</html>

예제 02/dl.html

<!DOCTYPE html>
<html>
<head>
    <meta charset='utf-8'>
    <meta http-equiv='X-UA-Compatible' content='IE=edge'>
    <title>Page Title</title>
    <meta name='viewport' content='width=device-width, initial-scale=1'>
</head>
<body>
    <h1>제주 올레</h1>
    <dl>
        <dt>올레 1코스</dt>
        <dd>코스 : 시흥 초등학교 옆 - 광치기 해변</dd>
        <dd>거리 : 14.6km(4~5시간)</dd>
        <dd>난이도 : 중</dd>
        <dt>올레 2코스</dt>
        <dd>코스 : 광치기 해변 - 온평 포구</dd>
        <dd>거리 : 14.5km(4~5시간)</dd>
        <dd>난이도 : 중</dd>
    </ul>
</dl>
</body>
</html>

<!DOCTYPE html>
<html>
<head>
    <meta charset='utf-8'>
    <meta http-equiv='X-UA-Compatible' content='IE=edge'>
    <title>Page Title</title>
    <meta name='viewport' content='width=device-width, initial-scale=1'>
</head>
<body>
    <table border="table">
        <tr>
            <th> 제목 셀</th>
            <td> 1행 2열 </td>
            <td> 1행 3열 </td>
        </tr>
        <tr>
            <th> 제목 셀 </th>
            <td> 2행 2열 </td>
            <td> 2행 3열 </td>
        </tr>
    </table>
</body>
</html>

<!DOCTYPE html>
<html>
<head>
    <meta charset='utf-8'>
    <meta http-equiv='X-UA-Compatible' content='IE=edge'>
    <title>Page Title</title>
    <meta name='viewport' content='width=device-width, initial-scale=1'>
</head>
<body>
    <table border="table">
        <tr>
            <th>이름</th>
            <td></td>
            <th>연락처</th>
            <td></td>
        </tr>
        <tr>
            <th>주소</th>
            <td conspan="3"></td>
        </tr>
        <tr>
            <th>자기소개</th>
            <td colspan="3"></td>
        </tr>
    </table>
</body>
</html>

<!DOCTYPE html>
<html>
<head>
    <meta charset='utf-8'>
    <meta http-equiv='X-UA-Compatible' content='IE=edge'>
    <title>Page Title</title>
    <meta name='viewport' content='width=device-width, initial-scale=1'>
</head>
<body>
    <table border="table">
        <caption>
            <strong>Modern Browser</strong>
            <p>국내에서 자주 사용하는 모던 브라우저</p>
            </caption>
            <tr>
                <th>브라우저</th>
                <th>제조업체</th>
                <th>다운로드</th>
            </tr>
            <tr> ...... </tr>
            <tr> ...... </tr>
            <tr> ...... </tr>
        </caption>
    </table>
</body>
</html>

예제02/table-6.html

<!DOCTYPE html>
<html>
<head>
    <meta charset='utf-8'>
    <meta http-equiv='X-UA-Compatible' content='IE=edge'>
    <title>Page Title</title>
    <meta name='viewport' content='width=device-width, initial-scale=1'>
    <style>
        table {
            margin:0 auto;
            border-spacing: 0;
            border-collapse: collapse;
        }
        table, th, td {
            border:1px solid;
        }
        th, td {
            padding:10px;
            width: 150px;
        }
        thead, tfoot {background: #bbb;}
        caption{margin: 10px;}
    </style>
</head>
<body>
    <table>
        <caption>제주특별자치도 학교현황(2015.4.1기준)</caption>
        <thead>
            <tr>
                <th>구분</th>
                <th>학교수</th>
                <th>학급수</th>
                <th>학생수</th>
                <th>교원수</th>
            </tr>
        </thead>
        <tbody>
            <tr>
                <th>유치원</th>
                <td>117</td>
                <td>252</td>
                <td>5,547</td>
                <td>474</td>
            </tr>
            <tr>
                <th>유치원</th>
                <td>117</td>
                <td>252</td>
                <td>5,547</td>
                <td>474</td>
            </tr>
            <tr>
                <th>유치원</th>
                <td>117</td>
                <td>252</td>
                <td>5,547</td>
                <td>474</td>
            </tr>
            <tr>
                <th>유치원</th>
                <td>117</td>
                <td>252</td>
                <td>5,547</td>
                <td>474</td>
            </tr>
            <tr>
                <th>유치원</th>
                <td>117</td>
                <td>252</td>
                <td>5,547</td>
                <td>474</td>
            </tr>
              <tfoot>
            <tr>
                <th>합계</th>
                <td>304</td>
                <td>3,437</td>
                <td>86,954</td>
                <td>6,111</td>
            </tr>
              </tfoot>
        </tbody>
    </table>
    
</body>
</html>

 

 

예제02/colgroup.html

<head>
    <meta charset='utf-8'>
    <meta http-equiv='X-UA-Compatible' content='IE=edge'>
    <title>Page Title</title>
    <meta name='viewport' content='width=device-width, initial-scale=1'>
    <style>
        table {width: 200px; height: 40px; border:solid}
        table td {border: solid}
    </style>
</head>
<body>
    <table>
        <caption>colgroup 연습</caption>
        <colgroup>
            <col>
            <col span="2" style="background-color:blue;">
            <col style="background-color: yellow;">
        </colgroup>
        <tr>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>
        <tr>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>
    </table>
</body>
</html>

 

연습문제1~4

1. 텍스트들이 미리 입력되어 있는 quiz-1.html 문서를 열고 다음 조건에 맞게 태그를 추가하세요.

<!doctype html>
<html lang="ko">
	<style>
		title {font-size: 20px;}
	</style>
<head>
	<meta charset="utf-8">
	<title>서울특별시</title>
</head>
<body>
	<div style="float:left; width:150px; margin-right:25px;">
		<img src="images/symbol.gif" alt="서울특별시 휘장">
	</div>
	<div>
	<h1>서울특별시</h1>
	<b>서울의 지향 이미지 : 역사와 활력의 인간도시<br><br></b>
		<tr>
			<td><i>휘장은 한글 '서울'을 서울의 산, 해, 한강으로 나타내면서 전체적으로는 신명나는 사람의 모습을 형상화한 것으로 인간 중심도시를 지향하는 서울을 상징합니다.</i><br></td>
			<br>
		</tr>
		<tr>
			<td>자연 - 인간 - 도시의 맥락 속에서 녹색 산은 환경사랑, 청색 한강은 역사와 활력, 가운데 해는 미래의 비전과 희망을 함축하고, 이 세가지 요소를 붓터치로 자연스럽게 연결하여 서울의 이미지와 사람의 활력을 친근하게 느낄 수 있도록 하였습니다.</td>
		</tr>
	</div>
</body>
</html>

 

2. 기본적인 HTML문서를 만들고 quiz-2.txt문서의 텍스트를 가져와 다음과 같이 표기하세요.

<!DOCTYPE html>
<html>
<head>
    <meta charset='utf-8'>
    <meta http-equiv='X-UA-Compatible' content='IE=edge'>
    <title>이지스퍼블리싱 신입 사원 모집 공고</title>
    <meta name='viewport' content='width=device-width, initial-scale=1'>
</head>
    <style>
        title {font-size: 30px;}
    </style>
<body>
    <h1>이지스퍼블리싱 신입 사원 모집 공고</h1>
    <table>
        <p>IT 기획, 편집 부서에서 함께 할 신입 사원을 모집합니다.</p>
        <ul>
            <li>모집 직군 : 편집 기획 부서</li>
            <li>직무 내용 : 도서 프로듀싱 업무 (신입 지원 가능)</li>
                <ul>
                    <li>- 도서 기획, 편집</li>
                    <li>- 도서 홍보, 독자 소통</li>
                </ul>
            <li>접수 마감일 : 2016.3.6.</li>
        </ul>
        <tfoot>
            <p>자세한 내용은 공지 게시판을 참고하세요.</p>
        </tfoot>
    </table>

</body>
</html>

3. quiz-3.html에 미리 입력된 텍스트를 두 가지 종류의 순서 있는 목록으로 표시하세요.

<!doctype html>
<html lang="ko">
<head>
	<meta charset="utf-8">
	<title>커피 드립 순서</title>
</head>
<body>
	<p>커피 드립 순서 - 아라비아 숫자</p>
	<table>
		<ol>
		<li>필터접기</li>
		<li>분쇄</li>
		<li>불림</li>
		<li>추출</li>
		</ol>
	</table>
	<p>커피 드립 순서 - 알파벳 소문자</p>
	<table>
	<ol type="a">
		<li>필터접기</li>
		<li>분쇄</li>
		<li>불림</li>
		<li>추출</li>
	</ol>
	</table>
</body>
</html>

4. quiz-4.html 문서에 그림과 같은 표를 작성하세요.

<!doctype html>
<html lang="ko">
<head>
	<meta charset="utf-8">
	<title>주요 SNS 서비스별 이용률</title>
	<style>
		table, th, td { 
			border:1px solid gray;  /* 표의 테두리 - 1px 회색 실선 */
			border-collapse:collapse;  /* 표 테두리와 셀 테두리 합치기 */
		}
		th, td {
			width:120px;  /* 셀 너비 */
			padding:5px;  /* 셀 패딩(테두리와 내용 사이의 여백) */
		}
	</style>
</head>
<body>
	<table>
		<caption>
			<strong>주요 SNS 서비스별 이용률(%)</strong>
		</caption>
		<thread>
			<tr>
				<td></td>
				<th>페이스북</th>
				<th>카카오스토리</th>
				<th>밴드</th>
				<th>인스터그램</th>
				<th>트위터</th>
			</tr>
		</thread>
		<tr>
			<th>2015년</th>
			<td>77.1</td>
			<td>58.3</td>
			<td>32.4</td>
			<td>16.7</td>
			<td>22.1</td>
		</tr>
		<tr>
			<th>2016년</th>
			<td>73.8</td>
			<td>51.0</td>
			<td>40.1</td>
			<td>28.1</td>
			<td>14.7</td>
		</tr>
	</table>
</body>
</html>

 

'HTML > 텍스트 관련 태그들' 카테고리의 다른 글

텍스트 관련 태그들  (0) 2021.08.03

+ Recent posts