날나리 강좌. ㅋ 레이아웃 짜기, 완성 예제
김군 왈, " 허허허.. 드디어 다 되었도다... "
A군 왈, " 어? 뭐가 ? "
김군 왈, " 레이아웃 짜는 것이 모두 끝났다고... "
A군 왈, " 마무리는 왜 니가 짓노? 하는 것은 다 내가 한 것 같은데... "
김군 왈, " 어허.. 마지막이니 멋진 김군은 이제 빠빠 잖아... "
A군 왈, " 가끔은.. 왜 A양, B양, O양 설정하지 않고 김군으로 했는지... 했는데.. 정도 들었고 그간 고생했다. "
김군 왈, " 근데... 이니셜이 무슨 모양 모양 비디오 같은데서 들어 본 것 같은데? "
A군 왈, " 허허.. 역시 눈치 빠른 김군... 내가 못 당해.. "
김군 왈, " 이제 마지막이니.. 그동안 한 것을... 총 복습으로 마무리 완성품을 만들어 볼께... "
A군 왈, " 그래.. 그래.. 화이팅 "
| <!doctype html> <head> <title> aequum's layout </title> <style> html, body {height: 100%} body {font:14px/1.5 georgia} html, body, div, p, form, img { margin:0;padding:0; border:0;} #wrapper { position: relative; z-index: 5; background:url('bg.png') repeat-y ; } div.setWidth { width: 960px; } body.setAlign #wrapper, body.setAlign #ADBlockItems, body.setAlign.left #wrapper, body.setAlign.left #ADBlockItems {margin: 0 auto 0 0;} body.setAlign.center #wrapper, body.setAlign.center #ADBlockItems {margin:0 auto;} body.setAlign.right #wrapper, body.setAlign.right #ADBlockItems {margin: 0 0 0 auto;} #header {height:100px; background:#fff; border:1px solid #EFEFEF; } #container {position:relative; overflow:hidden; zoom:1;} #footer {height:150px; background:#fff; border:1px solid #EFEFEF;} #container #leftSidebar { float:left; width:240px; padding:10px; display: inline; } #container #content {float:left; width: 480px; padding:10px;} #container #rightSidebar {float:left; width: 180px; padding:10px;} #ADBlock { position:absolute;width:100%;height:100px; left:0;top:100px; overflow:hidden } #ADBlockItems { position:relative; margin:0 auto; } #ADBlock div.AD { position:absolute;width:100px; background:#E7E7E7; height:100px; } #ADBlock div.AD.left {left:-100px;} #ADBlock div.AD.right {left:960px;} #wrapper.fixedFooter { min-height:100%; height:auto !important; height:100%; } #wrapper.fixedFooter #container {padding-bottom:152px;} #wrapper.fixedFooter #footer { position:absolute; bottom:0;width:100% } </style> </head> <body class="setAlign center"> <div id="wrapper" class="setWidth fixedFooter"> <!-- #header --> <div id="header"> #Header </div> <!-- #main --> <div id="container"> <div id="leftSidebar"> #leftStdebar </div> <div id="content"> #content </div> <div id="rightSidebar"> #rightSidebar </div> </div> <!-- #footer --> <div id="footer"> #footer </div> </div> <!-- #ADBlock --> <div id="ADBlock"> <div id="ADBlockItems" class="setWidth"> <div class="AD left"> .AD.left </div> <div class="AD right"> .AD .right </div> </div> </div> </body> </html> |
A군 왈, " 그동안 가르친 보람이 있는데... 어떻게 작성했는지 설명해봐 "
김군 왈, " 나름 재활용 가능하게... 코드를 나름 다소 구조적(?)인 작성을 헀어.
정렬기능이 있어.<body>클래스에 "setAlign"과 함께 center 등이 사용되면 그에따라 정렬되게 하였고....
또 문서 폭은 한 번에
div.setWidth를 수정해주면 그에 맞게 차지하게 했어. wrapping 했기에 그안에 header, container, footer 같은 요소의 폭은 따로 정해줄 필요가 없고... height는 각각 맞게 고치면 돼. width 변경으로 container 내부 float된 것은 물런 다시 계산해서 설정해야할 것이고..
게다가... 나름 광고 영역은 따로 분리해서 넣거나 빼는 등 쉽게 따로 관리가능하게 했고...
#wrapper <div>요소에 "fixedFooter" 클래스를 사용여부에 따라 바닥에 footer가 붙게 하거나 마는 등도 결정할 수 있게 하였어. "
A군 왈, " 오... 나름 보람을 느끼네.. ㅎㅎㅎ 자 그럼 그동안에 버그 잡기와 함꼐 다루었던 주제가 어떻게 적용되었는지 살펴보자고...
- #wrapper : 배경 이미지 사용 - faux column의 적용
- #wrapper : position:relative - footer의 absolute로 좌표계 기준으로 사용
- #wrapper : z-index:5 - 광고 블록보다 앞으로 위치 (구형 브라우저의 음의 z-index 처리 차이 [CSS 2.1수정된 부분])
- #container : overflow:hidden 과 zoom:1 - clear:both 대신 사용, hasLayout 관련 부분
- #wrapper.fixedFooter : ie6도 가능한 min-height 트릭
- #container #leftSidebar : display:inline - IE6에서 더블 마진 버그 해결
예제에서 빠졌지만
- IE6에서 음의 마진시 짤림 현상과 해결
- IE6에서 float된 요소들이 마진이 있는 경우 문제 (hasLayout 관련)
- IE9를 포함한 IE의 배경 투명에 대한 독특한 처리 및 해결 방법
- 동일 높이 column의 처리 : faux column 사용, javascript 방법, absolute의 사용
- 등등....?
이제 레이아웃은 걱정없이 앞으로 잘 짤 수 있을 것이얌... "
사용한 배경 파일은 위에...
----
ㅃㅃ
게시글 목록
| 번호 | 제목 |
|---|---|
| 8265 | |
| 20403 | |
| 20402 | |
| 20401 | |
| 20400 |
웹서버
서버 동시접속자 설정 변경하기
|
| 8259 | |
| 20399 | |
| 20398 | |
| 8255 | |
| 8249 | |
| 8246 | |
| 8242 | |
| 20396 | |
| 8240 | |
| 20395 | |
| 20394 |
MySQL
테이블 복사 쿼리
|
| 31033 | |
| 28385 | |
| 20393 |
PHP
현재 접속중인 사용자 나타내기
|
| 28380 | |
| 20392 |
MySQL
mysql select 후 update 하기
|
| 28377 | |
| 20391 | |
| 20390 |
PHP
한글문자열 자르는 법 입니다.
|
| 20389 | |
| 20388 | |
| 20387 |
PHP
이메일주소 검사하기 입니다.
|
| 20386 | |
| 20385 | |
| 20384 |
node.js
Node js 게시판 프로젝트 소개합니다.
|
| 20383 |
PHP
pc 모바일 체크
1
|
| 20382 |
PHP
계정 사용량(용량) 확인
|
| 8238 | |
| 20380 | |
| 20379 |
MySQL
소수점 반올림 버림
|
| 28376 | |
| 28372 | |
| 20378 | |
| 20377 |
PHP
에러 로그파일 생성하기
|
| 8235 | |
| 20375 | |
| 20374 | |
| 20373 |
PHP
후이즈검색 하기 입니다.
|
| 20372 |
PHP
그래프 그리기 입니다.
|
| 20371 |
JavaScript
자바스크립트로 구현한 number_format() 입니다.
|
| 20370 |
JavaScript
금액 관련 숫자를 한글로 변환하기 입니다.
|
| 28370 | |
| 20369 |
PHP
PHP 날짜 계산 관련 함수
|
| 28366 | |
| 20368 |
jQuery
jQuery 1.x와 2.x 버전 동시에 사용하기
|
| 20367 | |
| 20366 | |
| 20365 |
JavaScript
사업자 등록번호 검사하기 입니다.
|
| 20364 | |
| 20363 |
JavaScript
항상 같은곳에 광고창 만들기 입니다.
|
| 20362 |
JavaScript
부메뉴 나오게 하기 입니다.
|
| 20361 |
JavaScript
특정문자 제거하기 입니다.
|
| 20360 |
JavaScript
휴대폰번호 검사 하기 입니다.
|
| 20359 |
JavaScript
이미지 좌우로 이동 갤러리 입니다.
|
| 8231 | |
| 20358 | |
| 20357 |
JavaScript
쉬운 replaceAll 입니다.
|
| 20356 | |
| 20355 | |
| 20354 | |
| 20353 | |
| 20352 |
JavaScript
콤보스타일 메뉴 입니다.
|
| 20351 |
JavaScript
쿠키를 이용한 레이어 공지창 입니다.
|
| 20350 |
JavaScript
효과있는 텍스트 틱커 입니다.
|
| 20349 | |
| 20348 |
PHP
HTTP 인증 하기 입니다.
|
| 20347 |
JavaScript
외부 문서 불러오기 입니다.
|
| 20346 |
JavaScript
지정한 날짜까지 New 이미지를 띄워주기 입니다.
|
| 20345 | |
| 20344 |
JavaScript
메일 주소 검사하기 체크박스 입니다.
|
| 20343 |
JavaScript
무단링크 금지하기 입니다.
|
| 20342 | |
| 20341 |
MySQL
DB백업 및 복원
|
| 20340 |
JavaScript
페이지가 다른 사이트의 프레임에 갇히는 것을 막기 입니다.
|
| 20339 | |
| 20338 | |
| 20337 |
jQuery
input text 대문자만 받는 Jquery
|
| 20336 | |
| 20335 |
JavaScript
이미지 업로드와 미리보기 입니다.
|
| 20334 |
JavaScript
배경음악 랜덤 재생 하기 입니다.
|
| 20333 |
JavaScript
css 지원 여부 확인해서 다른 페이지로 이동하기 입니다.
|
| 20332 |
JavaScript
하부메뉴가 보였다가 숨겨졌다 하는 토글버튼 입니다.
|
| 20331 |
JavaScript
개별 페이지에 인덱스로 거쳐 들어오게 하기 입니다.
|
| 20330 |
JavaScript
랜덤으로 이미지 출력 되기 입니다.
|
| 20329 |
JavaScript
사용자 해상도 알아내기 입니다.
|
| 20328 |
JavaScript
붙여넣기 금지하기 입니다.
|
| 20327 |
MySQL
대소문자 데이터 조회하기
|
| 20326 |
JavaScript
퇴장시 팝업창 한번한 띄우기 입니다.
|
| 20325 | |
| 20324 | |
| 20323 |
JavaScript
시도, 구군, 동 주소 select
|
| 20322 |
MySQL
커리로 DB 테이블 명세서 출력하기
|
| 20321 |
JavaScript
브라우저 해상도 구분없는 절대 x,y 좌표 값 구하기 입니다
|
| 20320 |
PHP
rss 읽어오기 입니다.
|
| 20319 |
JavaScript
자바스크립트로 Ajax 효과내기 입니다.
|
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기