묻고답하기
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
css 레이아웃 제가 뭐가 틀린건지요...?
2009.01.21 23:40
댓글 6
-
...
2009.01.21 23:49
-
라르게덴
2009.01.22 11:08
여기다가 다시 쓰는데요.
제가 만들어 놓은건
브라우져 상단에
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html lang="ko" xml:lang="ko" xmlns="http://www.w3.org/1999/xhtml">
이렇게 선언되어야 가능한 동작인데요.
일반 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> 면 가운데 정렬이 되지 않습니다.
또한 핵을 사용시킨 이유는 위 xhtml 1.0을 선언한 곳에서 margin으로 정렬이 안되는 경우가 있습니다.
(이는 상위의 css 포멧을 어떻게 짰는지에 따라서 ie6에서 일어나는 버그 입니다.)
핵은 되도록 안쓰면 좋지만 자기 목에 칼을 드리델 만큼의 위험한 기능은 아니라고 봅니다. -
만쓰별(정만)
2009.01.22 12:27
핵이면 폭발하나요? ㅋㅋ 아~~~ 역시 알면 알수록 알아야 할 것들이 계속... 모르면 모를 수록 용감!!!! -
미눙
2009.01.22 16:56
라르게덴님
제가 지금까지 받아서 봤던 레이아웃들에 그런 선언 돼있는게 하나도 없었기에 궁굼한데요..
그런것도 layout.html에 원래 있어야 하는건가요..?
xe의 어딘가에 기본적으로 그런게 있는줄만 알았죠.. 그래서 레이아웃만들땐 utf-8만 써놓으면 되는줄알았는데..
책에서 보니 그 선언문도 종류가 많던데.. ㅜㅜ 그중에 뭘 써야하는지..
왜 xe 메뉴얼같은덴 그런게 나오지 않았을까요... -
라르게덴
2009.01.22 17:50
위 DOCTYPE 선언은 레이아웃에 되어있는 것이 아닙니다.
단지 미눙님께서 스타일을 잡았는데 안 된다고 하셔서
레이아웃을 만들기 전에 일반 html로 테스트 하려고 하시면서 위 선언에 신경을 쓰지 않고 기본 선언이 되어있는 html안에다가
설정하신게 아닌가 하고 생각이 들어서 적어 본 것 입니다.
XE안에 레이아웃안에서 만들어 지게 되면 안 될 소스가 아닙니다.
그 예로 xe_official 안에 선언된 css 처음 쪽 보시면 margin: 1.5em auto 0 auto; 로 되어있는걸 보실 수 있으십니다.
그리고 다른 곳에 없다고 쓰지 않아야 하는건 아니죠. 제가 님께 댓글 다는건 질문에 따른 답변이기 보단 경험에 따른 도움 정도라고 생각해 주세요.
웹제작, 특히 디자인에 답은 없다고 봅니다.
단지 결과물로써 좋은 것이냐 나쁜 것이냐만 있을 뿐.
그런 의미에서 _text-align:center; 은 제가 직접 레이아웃을 만들어보다가 ie6에서만 가운데 정렬이 되지 않는 현상이 나왔기 때문에
만들어보고 나서 말씀 드리는 것이고요.
대충 이런 형태 였죠.
끊기지 않는 BGM 달기위해 메인 레이아웃안에 iframe 호출 받고 100%로 전체 화면에 씌우고 겉 레이아웃의 body는 scroll=no 처리.
iframe에서 스크롤 처리 시키면 지금 여기 보는 것 처럼 메인안에 가상 프레임을 넣고 BGM이 안 끊기게 할 수 있습니다.
다만 ie6에서 버그로 인해 세로 스크롤이 생겨버리는 것을 방지 하게 위해 common/tpl/common_layout.html 안에 선언을
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
에서
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
로 바꾼거죠.
불가피 한 현상이 나타나게 된거죠.
그렇게 될 경우 역시 님이 정렬 안 된다는 증상이 나오게 됩니다.
이럴때 text-align:center; 또는 <div align="center"> 이런 형태로 정렬을 바로 잡을 수 있습니다.
즉, <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 상태에서는 먹히게 되는 소스입니다.
제가 생각해 볼때 핵의 사용은 올바르지 않은 증상을 올바르지 않은 방법으로 올바르게끔 보이게 만드는 거라고 생각합니다. -
미눙
2009.01.22 18:31
아.. 그렇군요..
무슨말인지는 알겠네요..
정성껏 답변해주셔서 감사합니다. ^^
이건 텍스트나 이미지 같은 인라인앨리먼트를 정렬시키는 CSS인데다..
앞에 언더바까지 붙혔으니 이건 IE6이하에서만 먹히는 핵입니다.
핵은 양날의 검입니다. 가급적 사용하지 맙시다.