제주에서 작은 IT 사업을 하고 있는 유지 아빠가 보고 듣고 느끼는 진솔한 이야기를 나누는 공간입니다.

웹 & IT/웹표준/CSS

웹표준을 이용해서 CSS만으로 꼭 사이트를 구축해야 하나요?

유지아빠 2010. 1. 17. 21:00

음....
꼭 웹표준을 이용하여 완벽하게 CSS 만으로 사이트를 구축한다.!!
고민해야 하는 문제네요.

웹의 초기에는 사이트들이 정말 간단했습니다.
그 후 1990년대 후반에서 2000년대에 급격하게 웹의 기술이 발달되고, 여러가지 기술들이 많이 나오면서 웹사이트를 구축하는것이 기능적인 것도 중요하지만, 웹사이트의 디자인이 더욱 많이 부각되었습니다.

그러다 보니, 사이트를 만들때 원래의 의도와는 달리 Table 태그를 많이 쓰게 되었습니다.
원래 Table 태그의 용도는 데이터를 보여주는 용도였습니다.
간단하게 말하자면, 엑셀과 같이 데이터를 정렬해서 보여주는 것이 Table 태그의 역할이었습니다.

하지만 웹디자이너들이 Table 태그의 새로운 용도를 발견하게 됩니다.
바로 사이트의 레이아웃을 잡는데, 손쉽게 사용이 가능하다는 겁니다.
손쉽게 만들 수 있다기 보단, 정확하게 레이아웃을 그려서 그 속에 이미지들 배열을 보다 쉽게 할 수 있었다는 겁니다.



예를 들어 위와 같은 레이아웃을 만들때 전체를 테이블로 구성해서 헤더부분, 메뉴 부분, 콘텐츠 부분, 푸터 부분을 구별하면 사실 작업하기 굉장히 편하게 만들 수 있었습니다.
얼핏봐도 테이블로 그리면 굉장히 간단하게 그릴 수 있게 보입니다.

각각의 td 사이즈를 정해주면 정확하게 그 사이즈만큼 정해져서 그려지니까요.
하지만 문제는 여기서 발생합니다.
너무 구조가 튼튼하다는 겁니다. 즉 왼쪽의 메뉴를 처음 예상하고 만들었는데, 나중에 이 왼쪽 메뉴를 오른쪽으로 옮기거나 하게 되면, 전체 사이트를 전부 뜯어 고치는 대공사가 됩니다.  ㅠㅠ;;
이런 일로 많은 밤을 새웠던 기억이...

그리고 태그들이 엄청나게 많이 생기게 됩니다. 즉 불필요하게 태그들이 많이 생성되는 것이죠.
원래 table 의 용도와는 다르게 디자인용으로 구성을 하다 보니, 나중에 소스 코드를 보면 너무 복잡해서 태그를 잘 못 닫거나 하면, 정말 고생합니다. 어디서 닫아야 되는지를 찾는것? 누가 실수를 해서 그 태그를 반드시 없애거든요.
디자이너거나, 프로그래머 둘중 하나는 반드시 실수 를 하게 됩니다.

하지만 웹 초기에는 전부 테이블을 이용해서 사이트를 개발하는것을 학원이나, 학교에서 교육하게 됩니다.
그러다 보니, 거의 95% 이상의 개발자나 디자이너들이 아무 생각 없이 사용을 하다, 4~5년 전 부터 웹표준이 유행하고, 웹표준으로 구축되는 사이트가 늘어나고, 특히 공공기관들이 웹표준에 의해서 사이트를 구축해야 한다는 가이드 라인이 나오자, 누구나 할 것 없이 웹표준 공부를 하게 되고, 이제는 HTML 과 CSS 를 분리해서 많이들 사이트 구축합니다.

자 이젠 제목에 대한 대답을 할 차례입니다.
웹표준을 준수 할려면 table 태그는 왠만하면 쓰지 말라고 하는데요? 그럼 table  태그를 반드시 사용하지 말아야 하나요?
그건 절대적으로 아닙니다.
원하는 곳에 편하게 사용한다!! 라는 것이 제 답입니다.
CSS 을 이용하여 사이트를 구축하는 것을 원칙으로 삼되, table 태그를 쓰면 간단하게 끝날 곳을 table 태그를 과감하게 사용하는 것도 하나의 방법입니다.


가끔 table 태그를 너무 배제해서 무조건 웹표준으로 사이트를 구축할려면 table 태그를 배제하는데, 절대 그럴 필요는 없습니다. table 태그를 쓸때 더 간단하게 코딩이 가능한 곳도 있습니다.

그러니 상황에 맞게 적절하게 사용하는 것이 제일 좋은 방법입니다.

이번에도 대형 사이트를 만들었는데, 상단 메뉴 부분을 전부 CSS 을 사용해서 디자인하고 코딩을 했는데, 나중에 프로그래밍이 입혀지니까, CSS 을 이용한 부분이 어떤 버그 때문인지 몰라도 절대 적용이 되지 않고 디자인이 전부 깨져 버리고, 레이아웃도 뒤 틀려 버렸습니다.
그럴때 전 과감하게 그부분을 CSS 걷어내 버리고 table 태그를 써서 입혀 버렸습니다.
구조상 table 태그가 더 간단했었구요.

자 개발자 분이나 디자이너 분들도 너무 웹표준에 연연하는 것도 좋지만, 더 간단한 방법이 있을때는 그 방법을 사용하는 것이 더 좋을때가 있습니다.