책 소개
[개정판 출간] 도서정보 페이지 바로가기 『Web Standards Solutions Special Edition 한국어판: 웹 표준 첫걸음』 |
웹 표준, 도대체 어떻게 시작해야 합니까?
국내최초로 출간되는 웹 표준 활용 지침서!
전 세계 전문가들이 극찬하고 국내 웹 전문가들이 기다려온 바로 그 책,
웹 표준의 대가 댄 씨더홈과 함께 퀴즈로 풀어보는 웹 표준 실전 가이드!
역자가 강의하는 웹 표준 블로그 만들기 등 한국어판 특별 부록 수록!
구입하신 모든 독자께 5,000원 상당의 사진인화권을 선물로 드립니다.
이제까지 웹 디자이너와 개발자들은 디자인이 화려한 사이트를 만들기 위해 비대한 마크업을 사용해왔고, 오늘날 웹은 이런 사이트로 온통 가득 차 있습니다. 테이블이 테이블을 세 번 이상 포함하고 있고 픽셀 단위로 레이아웃을 맞추기 위해 투명 GIF 이미지를 사용하는 것이 일반적인 형태가 된 지 오래입니다. 하지만 대중적인 주요 웹 브라우저에서 표준을 지원하기 시작하면서 깔끔하고 구조화된 마크업과 CSS를 함께 사용한 표준을 준수한 디자인 작업이 힘들다는 인식은 변화하기 시작했습니다. 트렌드가 변화하고 있습니다. 이렇게 웹 표준의 장점을 깨닫게 된 많은 사람들이 웹 디자인과 웹 개발 커뮤니티의 나머지 사람들을 한 단계 올려놓을 것입니다.
[ 이 책의 내용 ]
웹 표준을 이용해 사이트를 구현하면 어떤 장점이 있을까?
이 책은 웹 표준의 장점을 이해하기 위한 필수 안내서입니다.
XHTML과 CSS 같은 웹 표준은 이미 많이 알려진 기술입니다. 웹 관련 직종에 있다면 웹 표준에 대해서 들어봤을 것입니다. 하지만 웹 표준을 지원하는 웹 브라우저가 점차 늘어가고 있고, 웹 디자이너와 웹 개발자가 웹 표준이 주는 실질적인 이점을 이해하고 이를 준수하려고 하는 움직임이 많아지고는 있지만, 웹 표준으로 사이트를 구축하는 것은 아직까지 쉬운 일은 아닙니다. 웹 표준의 혜택을 완벽하게 이해하고 웹 표준을 이용해 효율적으로 사이트를 구현해야만 비로소 웹 표준의 진수를 아는 것입니다.
웹 표준 가이드는 16장과 부록으로 구성돼있습니다. 각 장에서는 여러 가지 웹 표준 개념의 이론과 실습을 다루며, 쉽게 이해할 수 있도록 문제에 대해 여러 가지 다른 해결방법을 보여줍니다. 이 책을 통해 다단 레이아웃, 이미지 바꿔치기, 테이블과 리스트 제대로 사용하기 등의 방법을 배울 수 있습니다. 이런 접근방법을 통해서 웹 표준의 핵심사항을 빠르게 이해하고 소화해 제대로 활용할 수 있을 것입니다.
- XHTML 소스를 가볍고 최적화시켜 이해하기 쉽게 작성하는 올바른 방법
- 웹 페이지를 구성하는 엘리먼트를 다양하게 꾸밀 수 있는 CSS 활용법
- 쉽고 효율적인 웹 페이지 레이아웃 구성방법
- 동일한 결과물을 만들어 내는 다양한 구현 방법
- 최신 웹 디자인 테크닉과 그에 따른 유의점 소개
[ 서 문 ]
이 책은 여러분에게 무기를 지급하기 위해 쓰게 됐습니다. 그 무기란 바로 여러분이 속한 프로젝트에서 웹 표준을 해결책으로 사용할 수 있는 것이며, 이 무기를 통해 마크업과 스타일에 있어 올바른 선택을 할 수 있는 능력을 갖게 될 것입니다. 한 장 한 장 넘어가면서 흔히 사용하던 실제 사례를 들어 웹 디자인 방법들을 비교해가며 어떤 방법이 왜 더 나은지 해답을 찾을 것입니다. 그러한 비교를 통해 우리가 수행할 프로젝트에 가장 적합한 방법을 찾고 이를 활용할 수 있게 될 것입니다.
하지만 먼저 이제 시작하는 단계라는 것을 상기합시다. 이 책에는 많은 약어와 코드 예제와 약간은 낯설어 보이는 개념이 포함돼있습니다. 먼저 웹 표준이 무엇인지부터 이야기해보죠.
왜 웹 표준인가?
어제 커튼을 샀습니다. 창 길이를 재고 상점에 가서 23인치의 커튼을 사고 집으로 돌아왔습니다. 완벽하게 잘 맞았죠. 작년에 아내와 저는 식기 세척기를 새로 구입했습니다. 기존에 사용하던 것을 빼내고 새로운 것을 주문했습니다. 물건이 도착한 후 설치해 보니 완벽하게 잘 맞았습니다. 여기서 생각해 볼 것이 있습니다. 가정용 제품들은 표준에 맞게 신제품들이 계속 나오면서 발전해가고 있습니다. 누구든지 저처럼 아무 상점에 가서 어떤 전등을 구입해서 설치해도 잘 들어맞을 것입니다. 또 문 손잡이를 사서 달 경우에도 십중팔구 아무 문제없이 설치할 수 있을 것입니다. 이렇게 미리 정한 표준 측정방법 덕분에 주택에서 편하게 생활할 수 있습니다. 새로운 주인이 이사 와서 집을 수리할 때도 표준이 있어서 쉽게 고치고 예쁘게 꾸밀 수 있을 것입니다.
물론 이렇지 않은 경우도 있을 수 있습니다. 20세기 이전에 지어진 집은 표준을 이용하지 않았습니다. 이 말은 표준을 지키지 않고 지은 집이 나쁜 집이라는 의미는 아닙니다. 다만 이런 집을 수리하거나 유지관리하기 위해서는 별도의 작업이 필요합니다. 낡은 집을 사서 개조를 하는 사람들을 때때로 볼 수 있습니다. 개조를 하는 과정은 힘들지만 이후부터 집을 유지관리할 때는 표준 규격의 장점을 쉽게 이용할 수 있게 됩니다. 이 책은 집에 대한 책이 아닙니다. 하지만 위의 사례를 웹에 비유할 수 있습니다. 표준 기반으로 웹 페이지를 만들면 유지관리하기가 훨씬 쉬워집니다. 함께 일하는 웹 디자이너와 개발자가 페이지의 구조와 스타일을 쉽게 이해할 수 있어서 금방 함께 작업할 수 있습니다.
웹 표준을 이해하게 되면 다음과 같은 장점을 취할 수 있습니다.
■ 마크업 용량이 줄어든다 코드량이 줄어든다는 것은 페이지 로딩 시간이 빨라진다는 것을 의미합니다. 또 코드량이 줄면 서버가 성능을 더 발휘할 수 있게 되므로 서버 공간이나 처리 능력에 들어가는 비용을 줄일 수 있습니다.
■ 컨텐트와 문서 모양을 분리할 수 있다 CSS를 사용해 사이트를 디자인할 수 있으므로 디자인 수정이나 리뉴얼을 쉽게 할 수 있습니다. 스타일시트 내용만 수정하면 사이트 전체에 디자인 수정사항이 그 즉시 반영됩니다.
■ 웹 접근성이 높아진다 웹 표준을 이용해 작성한 문서는 최대한 많은 웹 브라우저와 장치에서 읽을 수 있습니다. 대부분 브라우저, 휴대폰, PDA, 심지어 장애인 지원용 소프트웨어에서도 컨텐트를 쉽게 읽을 수 있습니다.
■ 향후 호환성을 보장받는다 웹 표준으로 페이지를 작성하게 되면 향후에도 그 문서를 확실히 읽을 수 있습니다. 위와 같은 장점들은 모두 웹 표준을 선택해야 하는 충분한 이유가 될 것입니다. 또한 이 책을 통해서 기존의 나쁜 습관을 고칠 수 있는 방법과 더불어 멋진 표준 기반의 디자인을 하기 위한 팁과 기술들을 선보이겠습니다.
책을 쓰게 된 동기
처음엔 아주 단순하게 시작했습니다. 제 개인 웹 사이트에 간단한 퀴즈를 올리는 것을 생각했죠. 동일하거나 유사한 결과를 내는 것들을 보기로 제시한 후 “어떤 방법이 가장 좋은 방법일까요?”를 선택하는 객관식 문제로 말이죠. 해답은 이 질문에 대한 진짜 해결책이었습니다. 이 퀴즈의 목적은 각 방법의 장단점을 보여주는 데 있었습니다. 때론 유효성이 검증된 html 코드가 반드시 최선의 해결책이 아닌 방법도 몇 가지 있었습니다. 이 글을 읽은 사람들은 댓글로 자신들의 의견을 남겨주고 이 토론을 통해서 강력한 무기를 얻게 됐죠. 페이지 머리글이나 리스트를 적절하게 사용하는 것이 왜 중요한지 이유를 알게 된다면 우리가 직접 수행하는 프로젝트에 바로 적용하게 될 것입니다. 웹 디자인에서 항상 그렇듯이 동일하거나 유사한 결과를 얻기 위한 방법은 여러 가지가 있습니다. 어떤 작업을 하든 최선의 방법을 사용해야 합니다. 하지만 선택할 수 있는 여러 가지 방법에 대한 장단점을 이해해야만 선택의 순간이 왔을 때 올바른 결정을 할 수 있을 것입니다.
이 책의 형식
이 책은 2부로 구성돼 있습니다. 1부는 마크업, 2부는 CSS에 대해서 다루고 있습니다. 각 장은 특정 질문에 대한 답변 형식으로 구성돼있습니다. 경우에 따라 동일한 결과를 만들어 내는 여러 가지 방법에 대해서 설명하기도 합니다. 각 방법에 대해서는 장점과 단점을 따져가며 상세하게 설명할 것입니다. 또 각 장의 마지막 부분에는 심화 학습을 제공해 그 장에서 설명한 내용과 관련된 고급 마크업과 CSS에 대해서 소개할 것입니다.
[ 부록 CD 소개 ]
1. 예제 소스코드
이 폴더에는 원서 "Web Standard Solution"과 한국어판 "실용예제로 배우는 웹 표준" 두 폴더 안에 책에 나온 모든 예제 소스코드가 담겨있습니다. 각 폴더에서 index 파일을 실행하면 각 장 모든 파일의 링크를 한 눈에 볼 수 있습니다.
2. KADO-WAH
웹 접근성 평가 프로그램인 KADO-WAH를 실었습니다. 웹 페이지의 접근성 여부를 국내외 웹 접근성 지침에 따라 자동으로 점검한 후에 그 문제점을 보고서로 제공하고 수정을 지원해 웹 디자이너와 프로그래머들이 쉽게 접근성이 있는 웹 페이지를 제작할 수 있도록 도와주는 프로그램입니다.
3. KADO 교육 자료
웹 접근성을 고려한 콘텐츠 제작기법을 담은 PDF파일입니다. KADO-WAH와 교육자료는 정보통신부와 한국정보문화진흥원이 무료로 제공해주셨습니다.
목차
목차
- 1부 마크업, 처음부터 제대로 배우기
- 1장 리스트
- 블로그 꾸미기
- 퀴즈 시간
- 방법 A. <br /> 태그 사용
- 1장 리스트
- 줄 바뀜 문제
- 방법 B. 불릿 활용
- 방법 C. 좀 더 정확하게
- 방법 D. 잘 감싸봅시다
- 요약
- 심화 학습
- 불릿 감추기
- 불릿 이미지를 넣어 더 예쁘게
- 내비게이션 메뉴바로 활용해보기
- 다양한 미니탭 모양 바꿔보기
- 문서 제목을 마크업하는 가장 좋은 방법은?
- 방법 C. 스타일과 내용 모두 살리기
- 요약
- 심화 학습
- 스타일링 기초
- 배경 지정
- 배경과 테두리선
- 손쉬운 업데이트
- 마무리
- 테이블이 적합한 경우
- 테이블 기초
- 심화 학습
- 헤더에 배경 이미지 지정
- 마무리
- 방법 A. 의미를 살리지 못한 표현
- 방법 B. 불필요한 클래스 지정
- 방법 C. 최선의 선택, <blockquote>
- 요약
- 심화 학습
- 마무리
- 폼을 마크업하는 방법에는 어떤 것이 있나요?
- 방법 D. 정의 리스트 활용하기
- 요약
- 심화 학습
- 탭인덱스
- 자주 사용하는 폼을 위한 액세스 키
- 폼 꾸미기
- 마무리
- 마무리
- 문서모양 vs. 문서구조
- 요약
- 심화 학습
- 문구 엘리먼트
- <samp>
- <var>
- <kbd>
- 마무리
- 웹 페이지 내의 특정 위치를 가리키는 가장 좋은 방법은?
- 방법 A. name 속성은 있고 내용은 없는 앵커 사용
- 요약
- 심화 학습
- 닻을 들어올리며
- 번호가 매겨진 리스트를 마크업하는 가장 좋은 방법은?
- 용어와 설명 묶음을 마크업하는 가장 좋은 방법은?
- 요약
- 심화 학습
- 마무리
- 웹 표준을 지켜 사이트를 만들면 마크업 용량을 줄일 수 있을까?
- 방법 A. 클래스 정의
- 불필요한 <div> 제거
- 요약
- 심화 학습
- 마무리
- 10장 CSS 적용하기
- CSS를 문서에 어떻게 적용하나요?
- 방법 A. <style> 엘리먼트 사용
- 방법 B. 외부 스타일 시트 사용
- 방법 C. @import 사용
- 방법 B와 방법 C를 조합한 다중 스타일시트 활용법
- 일반 스타일과 고급 스타일
- 캐스케이드 효과 활용
- 방법 D. 인라인 스타일
- 요약
- 심화 학습
- 대체 스타일
- 마무리
- 마무리
- 11장 인쇄를 위한 스타일
- 인쇄를 위한 스타일은 어떻게 지정하나요?
- 미디어 타입
- 대상을 지정하는 두 가지 방법
- 방법 A. media 속성
- 방법 B. @media 혹은 @import
- 여러 값 지정
- 화면 스타일과 인쇄 스타일 분리하기
- 인쇄용 스타일 시트 만들기
- 마무리
- 마무리
- 12장 CSS로 레이아웃 잡기
- CSS로 2단 레이아웃을 어떻게 만드나요?
- 방법 A. 사이드바 띄우기
- 방법 B. float을 두 번 사용하기
- 방법 C. 컨텐트 띄우기
- 방법 D. 포지셔닝
- 요약
- 심화 학습
- 박스모델 문제
- 가짜 컬럼
- 마무리
- 마무리
- 13장 텍스트 스타일
- 어떻게 하면 텍스트를 근사하게 꾸밀 수 있나요?
- 사용자마다 다른 웹 브라우저 기본 글꼴
- 줄 간격 조정
- font-family에 글꼴 모아놓기
- 커닝 (글자 간격)
- 텍스트 정렬
- 텍스트 변형
- 소형 대문자
- 문단 들여쓰기
- 마무리
- 마무리
- CSS로 텍스트 대신 이미지를 표시하려면 어떻게 해야 하나요?
- 요약
- 심화 학습
- 2단 또는 3단으로 자유롭게 변경하기
- 마크업과 스타일 구조
- <body>에 클래스 지정
- 그 밖의 다양한 활용 방안
- 사용자가 머물고 있는 위치 알리기
- 내비게이션바 구현을 위한 리스트
- 각 파트 지정
- CSS의 마법
- 마무리
- 이제 어디로 가야 할까요?
- 영향력 있는 블로그
- 관련 도서
- 맺는 말
- 블로그 페이지를 위한 마크업과 스타일
- 1단계. 기본 문서 구조
- 기타 참조 블로그
- 마무리
- 웹 접근성이란
- 우리나라 웹 접근성 관련 법률 및 동향
- 해외 선진국의 웹 접근성 관련 법률 및 동향
- 국내 스크린리더 프로그램 현황
- 한국정보문화진흥원 소개
- 정보통신 접근성 향상 표준화 포럼
- 웹 접근성 자동평가 툴
- 한국형 웹 콘텐츠 접근성 지침(KWCAG) 1.0
- W3C 웹 콘텐츠 접근성 지침(WCAG) 1.0
도서 오류 신고
정오표
[ p12 아래에서 6행 ]
list-style-image: none;
→ list-style: none;
[ p13 두 번째 문단 1행 ]
가로 15픽셀, 세로 5픽셀
→ 가로 12픽셀, 세로 12픽셀
[ p41 코드 2행 ]
<table> → <table border="1">
[ p95 코드 4행 ]
id"name" → id="name"
[ p147, p150 코드 내 ]
text-decoration: green;
→ text-decoration: none;
[ p198 코드 내 ]
@import "hifi.css"
→ @import "hifi.css";
[ p200 코드 내 ]
@import "master.css" → @import "master.css";
@import "custom.css" → @import "custom.css";
[ p222 '인쇄 미리보기로 잉크 아끼기' 절 3행 ]
미리보기 옵션이 이어서 → 미리보기 옵션이 있어서
[ p256, p257 코드 내 ]
voice-family: "\"}"\";
→ voice-family: "\"}\"";
[ p270 첫 번째 문단 1행 ]
이렇게 해서 첫번째 문단의 "I"를 맘대로 제어할 수 있게 되었습니다.
→ 이렇게 해서 첫번째 문단의 "유"를 맘대로 제어할 수 있게 되었습니다.
[ 부록 CD 예제소스코드 한글판 chapter1 ]
#fig1_7 #minitabs a.active, #fig1_8 #minitabs a:hover {
→ #fig1_7 #minitabs a.active, #fig1_7 #minitabs a:hover {
list-style-image: none;
→ list-style: none;
[ p13 두 번째 문단 1행 ]
가로 15픽셀, 세로 5픽셀
→ 가로 12픽셀, 세로 12픽셀
[ p41 코드 2행 ]
<table> → <table border="1">
[ p95 코드 4행 ]
id"name" → id="name"
[ p147, p150 코드 내 ]
text-decoration: green;
→ text-decoration: none;
[ p198 코드 내 ]
@import "hifi.css"
→ @import "hifi.css";
[ p200 코드 내 ]
@import "master.css" → @import "master.css";
@import "custom.css" → @import "custom.css";
[ p222 '인쇄 미리보기로 잉크 아끼기' 절 3행 ]
미리보기 옵션이 이어서 → 미리보기 옵션이 있어서
[ p256, p257 코드 내 ]
voice-family: "\"}"\";
→ voice-family: "\"}\"";
[ p270 첫 번째 문단 1행 ]
이렇게 해서 첫번째 문단의 "I"를 맘대로 제어할 수 있게 되었습니다.
→ 이렇게 해서 첫번째 문단의 "유"를 맘대로 제어할 수 있게 되었습니다.
[ 부록 CD 예제소스코드 한글판 chapter1 ]
#fig1_7 #minitabs a.active, #fig1_8 #minitabs a:hover {
→ #fig1_7 #minitabs a.active, #fig1_7 #minitabs a:hover {