HTML & CSS 입문자 완벽 정복 튜토리얼: 웹 개발 첫걸음
🚀HTML & CSS 입문자 완벽 정복 튜토리얼: 웹 개발 첫걸음
웹 개발의 세계에 오신 것을 환영합니다! 이 튜토리얼은 프로그래밍이나 웹 개발 경험이 전혀 없는 완전 초보자를 위해 작성되었습니다. 우리는 웹 페이지의 뼈대를 만드는 HTML(HyperText Markup Language)과 웹 페이지를 아름답게 꾸미는 CSS(Cascading Style Sheets)의 기본 개념부터 시작하여, 실제 간단한 웹 페이지를 함께 만들어보는 과정을 통해 여러분이 웹 개발의 첫 단추를 성공적으로 끼울 수 있도록 돕겠습니다. 어렵게 생각하지 마세요! 차근차근 따라오시면 누구나 웹 페이지를 만들 수 있습니다.
🛠️0. 시작 전 준비물: 간단하지만 필수!
HTML과 CSS를 배우고 실습하기 위해 복잡한 프로그램은 필요하지 않습니다. 다음 두 가지만 준비해주세요.
- 텍스트 편집기 (Text Editor): 코드를 작성할 프로그램입니다. 메모장도 가능하지만, 코딩에 특화된 무료 편집기를 사용하는 것이 훨씬 편리합니다.
- 추천: Visual Studio Code (VS Code) - 가볍고 강력하며, 다양한 확장 기능을 지원합니다. (이 튜토리얼은 VS Code 사용을 가정하고 설명할 수 있습니다.)
- 기타: Sublime Text, Atom, Notepad++ 등
- 웹 브라우저 (Web Browser): 작성한 HTML, CSS 코드가 어떻게 보이는지 확인할 프로그램입니다.
- 추천: Google Chrome - 개발자 도구가 강력하여 학습에 유용합니다.
- 기타: Firefox, Safari, Edge 등 (최신 버전을 사용해주세요.)
모든 준비가 끝났다면, 이제 본격적으로 HTML의 세계로 떠나볼까요?
🧱1. HTML 기초: 웹 페이지의 뼈대 만들기
HTML은 웹 페이지의 구조를 정의하는 마크업 언어입니다. 'HyperText'는 다른 페이지로 연결되는 링크를 의미하고, 'Markup Language'는 태그(tag) 등을 이용하여 문서나 데이터의 구조를 명시하는 언어를 뜻합니다. 쉽게 말해, HTML은 우리가 보는 웹 페이지의 글자, 이미지, 비디오 등이 어디에 어떻게 배치될지 그 '틀'을 만드는 역할을 합니다.
1.1 HTML 문서의 기본 구조
모든 HTML 문서는 기본적인 구조를 가집니다. 새로운 파일을 만들어 index.html
(또는 원하는 이름.html)로 저장하고, 아래 코드를 텍스트 편집기에 입력해보세요.
안녕하세요, 웹 세상!
이것은 저의 첫 번째 웹 페이지입니다.
이제 이 index.html
파일을 웹 브라우저에서 열어보세요. "안녕하세요, 웹 세상!"이라는 큰 제목과 "이것은 저의 첫 번째 웹 페이지입니다."라는 문장이 보일 겁니다. 각 코드의 의미는 다음과 같습니다.
: 이 문서가 HTML5 표준에 따라 작성되었음을 선언합니다.
: HTML 문서의 시작과 끝을 나타내며,
lang="ko"
는 이 문서의 주 언어가 한국어임을 의미합니다.: 문서 자체의 정보를 담는 부분입니다. 웹 브라우저 화면에는 직접 보이지 않지만, 중요한 설정들을 포함합니다.
: 문자 인코딩 방식을 UTF-8로 설정하여 한글이 깨지지 않도록 합니다.
: 다양한 기기(PC, 모바일)에서 페이지가 적절한 크기로 보이도록 설정합니다. (반응형 웹의 기초)
- 외부 스타일 시트 (External Style Sheet): 가장 권장되는 방식입니다. 별도의
.css
파일을 만들고 CSS 코드를 작성한 후, HTML 문서의태그 안에서
태그를 사용하여 연결합니다. 여러 HTML 페이지에서 동일한 스타일을 재사용할 수 있고, 코드 관리가 용이합니다.
style.css 파일 내용 (예시):
h1 { color: purple; font-family: Arial, sans-serif; } p { font-size: 16px; line-height: 1.6; }
HTML 파일에서 연결 (
안에):
- 태그 선택자 (Type Selector): HTML 태그 이름을 직접 사용합니다. (예:
h1
,p
,div
) - 클래스 선택자 (Class Selector): HTML 태그에
class
속성으로 이름을 부여하고, CSS에서는 점(.
)과 함께 클래스 이름을 사용합니다. (예: HTML에서, CSS에서
.highlight
) 하나의 클래스는 여러 요소에 적용 가능합니다. - 아이디 선택자 (ID Selector): HTML 태그에
id
속성으로 고유한 이름을 부여하고, CSS에서는 샵(#
)과 함께 아이디 이름을 사용합니다. (예: HTML에서, CSS에서
#main-content
) 아이디는 한 페이지 내에서 고유해야 합니다.
2.2 CSS 선택자 (Selectors) 기초
CSS는 '어떤 HTML 요소에(선택자)' '어떤 스타일을(속성과 값)' 적용할지 정의하는 방식으로 작동합니다. 선택자는 스타일을 적용할 HTML 요소를 지정하는 역할을 합니다.
CSS 구문 기본 형태:
선택자 { 속성: 값; 속성2: 값2; /* 더 많은 속성들... */ }
2.3 자주 사용되는 CSS 속성
CSS에는 수많은 속성이 있지만, 몇 가지 기본적인 속성부터 익혀봅시다.
color
: 글자 색상을 지정합니다. (예:color: red;
,color: #FF0000;
)background-color
: 요소의 배경색을 지정합니다.font-size
: 글자 크기를 지정합니다. (예:font-size: 16px;
,font-size: 1.2em;
)font-family
: 글꼴을 지정합니다. (예:font-family: Arial, sans-serif;
)text-align
: 텍스트 정렬 방식을 지정합니다. (예:left
,center
,right
)width
,height
: 요소의 너비와 높이를 지정합니다.margin
: 요소의 바깥쪽 여백을 지정합니다.padding
: 요소의 안쪽 여백(테두리와 내용 사이)을 지정합니다.border
: 요소의 테두리를 지정합니다. (예:border: 1px solid black;
)
🎨CSS 스타일 적용 예제 (외부 스타일 시트 방식)
1.
style.css
파일을 새로 만들고 아래 코드를 입력하세요./* style.css */ body { font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; background-color: #f0f8ff; /* AliceBlue */ color: #333; } h1 { color: #4682b4; /* SteelBlue */ text-align: center; border-bottom: 2px dashed #4682b4; padding-bottom: 10px; } .important-paragraph { color: #b22222; /* Firebrick */ font-weight: bold; background-color: #fffacd; /* LemonChiffon */ padding: 10px; border-left: 5px solid #b22222; } #special-link { color: green; text-decoration: none; /* 밑줄 제거 */ font-size: 18px; } #special-link:hover { /* 마우스를 올렸을 때 스타일 */ color: darkgreen; text-decoration: underline; }
2.
index.html
파일의태그 안에 아래
태그를 추가하여
style.css
를 연결합니다.3.
index.html
파일의태그 내용을 아래와 같이 수정하거나 추가해보세요.
CSS로 스타일 꾸미기
이것은 일반적인 문단입니다. CSS를 통해 웹 페이지가 훨씬 보기 좋아졌습니다.
이 문단은 'important-paragraph' 클래스가 적용되어 특별하게 보입니다.
여기를 클릭하면 특별한 링크로 이동합니다. (실제 이동 안 함)
4.
index.html
파일을 브라우저에서 열어보면 스타일이 적용된 것을 확인할 수 있습니다!🧩3. 박스 모델 (Box Model) 이해하기: 모든 요소는 사각형!
CSS에서 레이아웃을 다룰 때 가장 중요한 개념 중 하나가 박스 모델입니다. HTML의 모든 요소는 기본적으로 내용(content), 안쪽 여백(padding), 테두리(border), 바깥쪽 여백(margin)으로 구성된 사각형 박스로 간주됩니다.
(CSS 박스 모델 다이어그램 이미지를 삽입해주세요)
- Content: 텍스트나 이미지 등 실제 내용이 표시되는 영역입니다.
width
와height
속성으로 크기를 조절합니다. - Padding: 내용(Content)과 테두리(Border) 사이의 안쪽 여백입니다.
- Border: 패딩(Padding)과 마진(Margin) 사이를 감싸는 테두리입니다. 선의 종류, 두께, 색상을 지정할 수 있습니다.
- Margin: 테두리(Border) 바깥쪽의 여백으로, 다른 요소와의 간격을 조절합니다.
이 박스 모델을 잘 이해하고 각 속성(
padding
,border
,margin
,width
,height
)을 조절하면 요소의 크기와 다른 요소와의 간격을 정교하게 제어할 수 있습니다. 브라우저의 개발자 도구(보통 F12키)를 사용하면 각 요소의 박스 모델을 시각적으로 확인할 수 있어 매우 유용합니다.🚀4. 다음 단계: 무엇을 더 배워야 할까요?
축하합니다! HTML과 CSS의 기본적인 내용을 맛보았습니다. 이 지식을 바탕으로 더 많은 것을 배우고 시도해볼 수 있습니다.
🎯실천해볼 다음 학습 목표들
- 다양한 HTML 태그 익히기:
(표),
(입력 양식),
,
댓글
댓글 쓰기