2011-01-18 3 views
1

는 내가이 div의 하나는 왼쪽으로 떠 다른 떠있는 권리를 포함하는 콘텐츠 상자를 가지고 내 페이지에서어떤 doctype이 필요합니까?

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 

의 문서 타입 VS 기본값을 사용하여 문제가 발생하고있다. 오른쪽으로 떠있는 div에는 높이 : 100 %가 포함되어 있지만 왼쪽 div의 높이와 일치 시키려면 적용되지 않습니다.

IE8에서 doctype (나쁜 것, 알아요,하지만 방금 테스트했습니다 ..)을 제거하면 사이트가 개 아침 식사처럼 보이지만 Chrome과 Firefox에서는 정확하게 내가 원하는 것처럼 보입니다.

+0

마크 업을 게시 할 수 있습니까? – 5arx

답변

3

코딩하고있는 HTML 버전에 맞는 doctype을 사용해야합니다. 예 : <!DOCTYPE HTML> (HTML 5의 경우)

+2

HTML5 doctype의 장점은 모든 브라우저와 백 워드 호환이 가능하다는 것입니다. 그래, 실제 HTML5 기능은 예전 브라우저에서는 작동하지 않을 수 있지만 doctype은 IE6에서도 괜찮습니다. 그래서 다른 것을 사용할 필요가 없습니다. – Spudley

+0

Doctypes에 의존하는 QA 도구는 다른 것을 사용하는 데는 좋은 이유입니다. – Quentin

2

기본적으로 DOCTYPE은 브라우저가 깨진 HTML을 가정하고 추측을 시도하여 일관된 결과를 얻지 못하도록합니다. 선택한 모든 사양을 선택하십시오 (XHTML을 피하려고하지만 맛이 있습니다). 오류가 없을 때까지 HTML 유효성 검사기를 통해 코드를 실행하십시오.

0

대답 없음 : 두 개의 열 레이아웃을 검색하십시오.

힌트 : "clear : both"스타일 솔루션을 검색하십시오.

1

당신은 문서 타입을 사용한다 (http://www.quirksmode.org/css/clearing.html 참조) 그 :

  • 트리거 standards mode (AKA 엄격 모드)
  • 보통 :
    • HTML 4.01해야 당신이 쓰고있는 마크 업 (반영 기본적으로 Strict (또는 실제로 필요한 것이 있으면 Transitional)
    • 초안의 기능을 사용하는 경우 HTML
    • XHTM L 1.0 끝에 부록 C 정상화를 가진 XML 툴체인이있는 경우 엄격한 (또는 당신이 정말로 그것을에서 뭔가를해야 할 경우 과도) 그냥 그림을 필요

당신이 doctype이 트리거 표준 모드, 그래서 브라우저가 예상대로 컨텐츠를 렌더링하지 않는 이유를 설명합니다 (CSS 또는 마크의 오류로 인한 것일 가능성이 큽니다 (validator).

0

두 div의 높이가 동일할까요? div가 표 셀과 동일한 방식으로 작동하지 않기 때문에 표준 모드에서는 절대로 적용되지 않습니다. 표 셀은 표의 크기를 충족시키기 위해 늘어나고 div는 독립적 인 컨테이너이며 동일한 방식으로 동작하지 않습니다.

그러나 Faux Column 기술과 같은 솔루션이 있습니다.

Here's a an article on the "Faux Columns" technique.

관련 문제