표준화된 디자인 솔루션 - 마크업 언어 및 스타일 핸드북
웹 표준 솔루션 마크업 및 스타일 핸드북
1부: 마크업 구문에서 시작하는 마크업 살펴보기
Chapter2 악의 형상?
테이블을 사용하는 것이 언제 죄악이 되었는지 알고 계셨나요? 실제로 웹 표준을 기반으로 웹 페이지를 작성하는 것에 대한 가장 큰 신화는 "더 이상 테이블을 사용하지 마세요!"라는 것입니다. 전염병은 봉인되어 먼지가 많은 캐비닛에 던져져 인터넷 초창기부터 전해 내려오는 골동품으로 보존되어야 합니다.
그런 혐오감은 어쩌면 처음에는 아주 간단합니다. 많은 사람들이 중첩된 표와 빈칸 채우기 GIF 이미지의 전통적인 레이아웃을 버리고 유연하고 구조화된 CSS 레이아웃으로 전환하는 것의 이점을 자신있게 홍보할 것입니다. 상황에 관계없이 모든 테이블을 고집스럽게 제거하기 시작합니다.
이 책의 뒷부분에서 CSS 레이아웃 방법과 이를 통해 얻을 수 있는 모든 이점을 살펴보겠습니다. 올바른 맥락에서, 즉 데이터 목록에 레이블을 지정할 때 테이블을 사용하는 방법을 살펴보겠습니다.
그게 바로 테이블입니다. 🎜> 목록 데이터에 라벨을 지정할 때 테이블 태그를 사용하지 않을 이유가 전혀 없습니다. 다음은 몇 가지 예입니다.
달력
스프레드시트
차트
시간 일정
이러한 예와 기타 많은 경우에는 데이터를 테이블처럼 보이게 하기 위해 매우 복잡하고 엄격한 CSS 효과를 사용해야 합니다. 아마도 영리한 CSS 플로트를 사용하고 모든 항목을 배치한 후에 얻을 수 있는 결과를 상상할 수 있을 것입니다. CSS 없이는 모든 정보를 정확하게 읽는 것이 아마도 불가능한 작업이 될 것이라는 점은 말할 것도 없고, 호환되지 않고 모순되는 결과가 나옵니다. 실제로 테이블을 두려워할 필요는 없습니다. 테이블을 원래 목적에 맞게 사용해야 합니다.
모두를 위한 양식 양식이 비난받는 이유 중 하나는 주의해서 사용하지 않으면 사용성 결함이 있기 때문입니다. 예를 들어 스크린 리더는 내용을 올바르게 읽는 데 어려움을 겪습니다. 화면 장치는 레이아웃에 사용되는 테이블로 인해 중단되는 경우가 많지만, 동시에 CSS를 사용하여 향후 스타일을 위한 유연한 구조를 만드는 몇 가지 간단한 방법이 있습니다. 3- 1의 간단한 예, 이것은 아메리칸 리그의 리그 기록입니다:
그림 3-1: 일반적인 데이터 테이블 예아마도 이것은 Red Sox 팬들에게 매우 우울할 것입니다. 통계 데이터 , 그러나 그림 3-1은 목록 데이터의 완벽한 예입니다. 3개의 테이블 헤더(연도, 상대, 시즌 기록(w-l))가 있고 그 위에 4년간의 데이터가 있습니다.
이 데이터 테이블을 표시하는 방법은 매우 직관적입니다.
Boston Red Sox World Series Championships< ; /p>
연도 |
시즌 기록(승-패)< ; /td> |
|
1918 | 시카고 컵스 |
|
1916 | 브루클린 로빈스 | 91-63 |
1915 | 필라델피아 필리스 | ;101-50 |
1912 | 요크 자이언츠 | 105-47 |
이런 방식으로 표시되는 결과는 다음과 같습니다. 그림 3-1과 매우 유사하지만 이를 바탕으로 몇 가지 개선 사항을 추가할 수 있습니다. 먼저, 보다 의미 있는
연도 | 상대편 | 시즌 기록(W-L) |
1918 |
|
75-51 |
1916 | 브루클린 로빈스 | 91-63 |
1915 td> |
필라델피아 필리스 | 101-50 |
|
뉴욕 자이언츠 | 105-47 |
중요한 상황, 标题必须快速传达后side资料主题,根据默认设置,大多数可视化浏览器将
#p#
加上摘要
另外,我们也能为
연도 |
상대 | 시즌 기록( W-L) |
1918 | 시카고 컵스 td> |
75-51 |
1916 | 브루클린 로빈스 | 91-63 |
1915 | 필라델피아 필리스 | 101-50 |
1912 | ;뉴욕 자이언츠 | 105-47 |
表格的表头
지금 建立数据表格时,善用表头是件很重要的工작품.재标记密格格时,我们可以发挥标签의 창작,而不是使用落标题一样.
可视化浏览器或许会以粗体居中的效果显示
除显示效果的优势外,使用
1918 /td> |
시카고 컵스 | 75-51 |
브루클린 로빈스 | 91-63 | |
1915 | 필라델피아 필리스 | 101-50 | 1912 | 뉴욕 자이언츠 | 105-47 |
데이터 콘텐츠 외부의 헤더를 강조 표시하기 위해 추가 표시 효과 태그를 사용할 필요가 없습니다.
기본 설정에 따라 대부분의 시각적 브라우저는
다음에서 테이블 헤더 태그 사용의 다른 이점에 대해 계속 논의하겠습니다. .
#p#
헤더와 데이터의 관계
헤더 속성을 사용하여 헤더를 해당
다음과 같이 각 헤더에 ID를 추가하는 것은 매우 간단합니다.
< ;tr>
;/ tr>
각 헤더 ID에 대해 짧고 설명이 포함된 이름을 선택한 다음 각 데이터에 적절한 헤더 속성을 셀에 추가합니다. 콘텐츠가 올바른 헤더 ID와 일치하도록 합니다.
연도 | 상대 | 시즌 기록(W-L) |
---|---|---|
시카고 컵스 | 75-51 td> tr> |
|
1916 | 브루클린 로빈스< ;/td> |
91-63 |
1915 | 필라델피아 필리스 | 101-50 |
1912 | 뉴욕 자이언츠 | 105-47 |
테이블 헤더와 콘텐츠 간의 대응 관계를 설정한 후 스크린 리더는 "연도: 1918, 상대: 시카고 컵스, 시즌 기록(W-L): 75-51"과 같이 테이블의 각 행을 읽는 것이 가능합니다. 각 셀의 내용을 왼쪽에서 오른쪽으로 읽는 것과 비교하면,
각
#p#
abbr 속성을 활용하세요
이전 예시에서는 헤더의 '시즌기록(W-L)'이 너무 길어서 스피치로 발음하기 힘들다고 느끼실 수도 있습니다 이때 abbr 속성을 추가하면 시각적 브라우저의 셀에 원본 텍스트를 유지하면서 발음 내용을 줄일 수 있습니다.
75-51
< ;td> ;뉴욕 자이언츠
abbr="기록을 추가했습니다. "를 선택하면 스크린 리더는 헤더의 짧은 버전을 사용하여 "Record"를 읽습니다. >여기서 테이블 관련 태그 세 개도 언급하고 싶습니다. 이 태그는 테이블 구조에 대해 보다 정확한 의미를 제공할 뿐만 아니라 테이블 구조에 대한 추가 태그도 제공합니다.
HTML4.01 사양에서 이러한 태그에 대한 W3C 설명을 인용하세요(http:// www.php.cn/):인용문:
thead, tfoot 및 tbody 태그를 사용하여 테이블 행을 테이블 머리글, 테이블 바닥글 및 무제한의 테이블 본문으로 나눌 수 있습니다. . 이 분류 방법을 사용하면 브라우저가 표 본문을 독립적으로 스크롤하는 기능을 지원할 수 있습니다.
따라서 이 분류 방법을 사용하면 긴 표를 인쇄할 때 머리글과 바닥글이 반복될 수도 있습니다. 또한 독립 테이블 본문을 지원하는 브라우저 사용자가 테이블 콘텐츠, 특히 긴 테이블을 더 쉽게 읽을 수 있도록 할 수 있으므로 브라우저 및 기타 장치가 로드될 수 있습니다. 내용을 먼저 표시하고 테이블 행 분류 방식으로 테이블을 표시합니다.
셀의 양쪽(오른쪽과 아래쪽)에 1픽셀 테두리를 추가합니다. th, td { border- right: 1px solid #999; border-bottom: 1px solid #999; } 양쪽에만 테두리를 추가하는 것은 테두리를 만드는 동안 어디에서나 동일한 너비의 테두리를 만드는 것입니다. 대부분은 팝업됩니다. 핵심은 브라우저가 이를 올바르게 표시할 수 있다는 것입니다. 모든 면에 테두리를 추가하면 나중에 셀을 정렬할 때 테두리의 위쪽과 왼쪽이 겹칠 것입니다. 하나만 사용하는 방법 테두리 규칙은 어린이다운 효과를 얻기 위한 방법입니다. 그림 3-2의 전체 테이블에는 테두리를 완성하기 위해 위쪽과 왼쪽 테두리만 누락된 것을 알 수 있습니다.
|

htmltagsareessentialforstructuringwebpages, 향상 액세스 가능성, SEO 및 성능

Self-ClosingTagsinhtmlandxMlaretagsThatCloseThemselvess withoutseeparateClosingTag, 1) theareStement-well-formeddocuments.2) indugible-ustible butrr

강력한 기능과 우수한 사용자 경험을 가진 웹 사이트를 구축하기 위해서는 HTML만으로는 충분하지 않습니다. 다음 기술도 필요합니다. JavaScript는 웹 페이지 동적 및 상호 작용을 제공하며 DOM을 운영하여 실시간 변경을 달성합니다. CSS는 미학 및 사용자 경험을 향상시키기 위해 웹 페이지의 스타일과 레이아웃을 담당합니다. React, Vue.js 및 Angular와 같은 현대 프레임 워크 및 라이브러리는 개발 효율성 및 코드 조직 구조를 향상시킵니다.

부울 속성은 값없이 활성화되는 HTML의 특수 속성입니다. 1. 부울 속성은 입력 상자를 비활성화하는 등의 존재 여부에 따라 요소의 동작을 제어합니다. 2. 작업 원칙은 브라우저가 구문 분석 할 때 속성의 존재에 따라 요소 동작을 변경하는 것입니다. 3. 기본 사용법은 속성을 직접 추가하는 것이며, 고급 사용량은 JavaScript를 통해 동적으로 제어 될 수 있습니다. 4. 일반적인 실수는 값을 설정해야한다고 잘못 생각하고 올바른 글쓰기 방법은 간결해야합니다. 5. 모범 사례는 코드를 간결하게 유지하고 부울 속성을 합리적으로 사용하여 웹 페이지 성능 및 사용자 경험을 최적화하는 것입니다.

HTML 코드는 온라인 유효성 검사기, 통합 도구 및 자동화 된 프로세스를 통해 깨끗할 수 있습니다. 1) w3cmarkupvalidationservice를 사용하여 온라인으로 HTML 코드를 확인하십시오. 2) 실시간 확인을 위해 VisualStudioCode에 HTMLHINT 확장을 설치하고 구성하십시오. 3) htmltidy를 사용하여 시공 프로세스에서 HTML 파일을 자동으로 확인하고 청소하십시오.

HTML, CSS 및 JavaScript는 최신 웹 페이지를 구축하기위한 핵심 기술입니다. 1. HTML 웹 페이지 구조를 정의합니다. 2. CSS는 웹 페이지의 모양을 담당합니다.

HTML의 기능은 웹 페이지의 구조와 내용을 정의하는 것이며, 그 목적은 정보를 표시하는 표준화 된 방법을 제공하는 것입니다. 1) HTML은 타이틀 및 단락과 같은 태그 및 속성을 통해 웹 페이지의 다양한 부분을 구성합니다. 2) 콘텐츠 및 성능 분리를 지원하고 유지 보수 효율성을 향상시킵니다. 3) HTML은 확장 가능하므로 사용자 정의 태그가 SEO를 향상시킬 수 있습니다.

HTML의 미래 트렌드는 의미론 및 웹 구성 요소이며 CSS의 미래 트렌드는 CSS-In-JS 및 CSShoudini이며, JavaScript의 미래 트렌드는 WebAssembly 및 서버리스입니다. 1. HTML 시맨틱은 접근성과 SEO 효과를 향상시키고 웹 구성 요소는 개발 효율성을 향상 시키지만 브라우저 호환성에주의를 기울여야합니다. 2. CSS-in-JS는 스타일 관리 유연성을 향상 시키지만 파일 크기를 증가시킬 수 있습니다. CSShoudini는 CSS 렌더링의 직접 작동을 허용합니다. 3. Webosembly는 브라우저 애플리케이션 성능을 최적화하지만 가파른 학습 곡선을 가지고 있으며 서버리스는 개발을 단순화하지만 콜드 스타트 문제의 최적화가 필요합니다.


핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

PhpStorm 맥 버전
최신(2018.2.1) 전문 PHP 통합 개발 도구

ZendStudio 13.5.1 맥
강력한 PHP 통합 개발 환경

DVWA
DVWA(Damn Vulnerable Web App)는 매우 취약한 PHP/MySQL 웹 애플리케이션입니다. 주요 목표는 보안 전문가가 법적 환경에서 자신의 기술과 도구를 테스트하고, 웹 개발자가 웹 응용 프로그램 보안 프로세스를 더 잘 이해할 수 있도록 돕고, 교사/학생이 교실 환경 웹 응용 프로그램에서 가르치고 배울 수 있도록 돕는 것입니다. 보안. DVWA의 목표는 다양한 난이도의 간단하고 간단한 인터페이스를 통해 가장 일반적인 웹 취약점 중 일부를 연습하는 것입니다. 이 소프트웨어는

Atom Editor Mac 버전 다운로드
가장 인기 있는 오픈 소스 편집기

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기
