쏭군은 열정 드리머

이제는 HTML마크업과 CSS프레젠테이션을 분리하여 프론트엔드 웹페이지를 만들 수 있는 분들이 많아진 것 같습니다. 확실히 이제는 이렇게 하는것이 표준이 되었고 자리를 잡았네요. 다행이라고 생각합니다.

그럼에도 불구하고 협업을 하다보면 기본적인 부분들을 놓치시는 프론트앤드 개발자분들이 많으신 것 같아서, 기본적인 것임에도 많은 분들이 놓치고 있는 것들을 간간히 포스팅 하고자 합니다.

오늘은 CSS의 clear 속성에 관한 이야기 입니다.

사용자 삽입 이미지

위의 레이아웃을 보시면 LNB는 float: left로, 그리고 우측의 콘텐츠 영역은 float: right로 정렬했고, 하단에 있는 푸터 부분은 clear속성을 이용해서 플로팅 되어 있는 HTML요소들을 클리어 리셋합니다. 어느 사이트를 만들때나 거의 항상 사용하는 기본 레이아웃이라고도 할 수 있습니다.

푸터 부분에 clear:both; 속성을 사용할때, 간혹 HTML마크업을 이용하시는 분들이 계시는 것 같습니다. 예를 들면 다음과 같이 말이죠. 많은 분들이 이런식으로 코드를 만드시는데 무엇이 문제일까요? 바로 클래스명 'cb'부분입니다. 플로팅 된 요소를 클리어 리셋하기 위해서 아무 내용도 없는 빈 DIV가 마크업에 추가되었고, CSS에도 별도로 클리어를 위한 클래스가 만들어져 있습니다. 혹시 이런 습관을 가지고 있다면 좋은 습관이 아니라고 생각됩니다. 물론, 이 방법이 잘못되었다고는 할 수 없습니다만 권장되는 방법은 아닙니다. 이 방법이 좋지 않다고 생각되는 제 개인적인 이유는 다음과 같습니다.

1. HTML마크업은 문서에 꼭 필요한 요소들만 들어가야 하기에, 저런 의미없는 태그들은 들어가지 않도록 하는게 맞습니다.
2. 간혹, 저런 의미 없는 태그들 때문에 이유없이 브라우저 랜더링 버그를 만난다던가 레이아웃이 깨지는 현상을 겪기도 합니다.
3. 저렇게 사용하는 것이 코드가 더 길어지고 작업 시간도 길고 번거롭습니다.

이렇게 사용하셨던 분들은 앞으로는 푸터 컨테이너를 컨트롤 하는 CSS에 다음과 같이 clear:both만 추가해주는게 어떨까요? 이렇게 클리어 리셋이 필요한 부분에 clear속성을 직접 기술하는 것이 마크업도 깔끔해지고, 되려 CSS를 관리할때도 더 편리합니다.

LNB, Content, Footer 레이아웃을 예로 설명 드렸지만 이와 같이 플로팅된 요소들을 clear할 일이 있으시다면 앞으로는 이렇게 코딩해 보세요^^

날씨가 덥습니다~ 모두 건강 조심하세요^^
2011/08/03 08:18

트랙백 주소 :: http://monoeyes.com/trackback/837

  1. 천상민 2012/01/04 06:56  댓글주소  수정/삭제  댓글쓰기

    오 그렇군요 감사합니다 저룰 두고 하시는 말씀 ㅎㅎ ㅎㅎ

  2. 이병관 2012/01/27 13:25  댓글주소  수정/삭제  댓글쓰기

    감사합니다~~! 감사합니다~~!

  3. BlogIcon Authorhouse 2012/03/23 18:09  댓글주소  수정/삭제  댓글쓰기

    유용한 포스트. 이 리소스 주셔서 감사합니다.

  4. Anonymous 2012/03/28 14:54  댓글주소  수정/삭제  댓글쓰기

    좋은글 감사합니다.^^ 많이 배우고 가네요 ㅎㅎ
    보다가 한가지 의문점이 들어서 댓글을 남깁니다.

    저런 레이아웃같은 경우에는 clear:both를 푸터 하나에만 주면 되니 저렇게 하는게 더 깔끔해 지지만 요즘 많이 떠오르고있는 원페이지 레이아웃같은 경우에는 하나의 페이지에 많은 레이아웃이 들어가다보니 clear:both를 해줘야 할 요소들이 많아지는데 이럴경우에는 divider같은 요소를 추가해서 clear:both를 css에서 하나만 주고 마크업에서 divider를 추가만 하는 방식은 어떤가요?

    요즘들어 코딩을 배우기 시작해서 하나하나가 다 궁금한것 투성이네요 ㅠ_ㅠ
    감사합니다~

    아, 그리고 HTML5 & CSS3 책 너무 감사하게 잘 읽고있습니다 ^^

  5. BlogIcon Alison Balderrama 2012/05/12 10:35  댓글주소  수정/삭제  댓글쓰기

    또 다른 새 문서를위한 많은 감사합니다. 이외에 장소에 어떠한 사람이 쓰기이 특정 좋은 방법의 세부 그런 종류를 얻을 수 있을까? 나는 이러한 정보를 고려를 통해 내가 여기 있다고, 다음주 연설 있어요.

  6. BlogIcon Gary Rodricks 2012/05/12 10:40  댓글주소  수정/삭제  댓글쓰기

    그것은 그것에 대해 이동 시간을 내주는 대신 넓은 개인이고, 나는 이것에 대해 확고하게 자신을 발견하고 장기 동안 더 그것에 대해 알아 찾을하고자하실 수 있습니다. 가능하다면, 당신은 노하우를 얻을 때, 당신은 더 많은 유익한 정보와 함께 더 자주 블로그를 업데이 트 상상해도 될까요? 진실로 이것은 모두 매우 좋은 선택이 될 수 있습니다.

  7. BlogIcon Jessi Reinstein 2012/05/12 10:45  댓글주소  수정/삭제  댓글쓰기

    글쎄, 내가 그걸 극복 좋은 정보를 사냥하고있다는 것을 이유로 해당 게시물. 사람은 내가 꽤 발견했습니다이 문서 사람의 기사를 읽은 이외에 참으로 좋은 거래가 될 가르쳐준 것을 발견한 때문에 활력이 될 것입니다 이 특정 문제에 대한 몇 가지 새롭고도 유익한 정보.




''에 해당되는 글 건

방명록