얕보기 쉬운 HTML과 CSS
HTML과 CSS가 무시당하는 이유, 첫번째는 이 두 언어가 프로그래밍 언어가 아닌 마크업 언어이기 때문입니다. 마크업 언어는 태그를 이용해 문서나 데이터 구조를 표현하는 언어를 뜻합니다. 프로그래밍 언어가 유저와 사이트 간의 상호 작용을 지원한다면 마크업 언어는 명시된 고정 정보만 전달이 가능합니다. 우리가 만들어야 할 사이트가 변화가 없는 랜딩 페이지라면 마크업 언어만으로 제작할 수 있겠지만, 서버와 통신해야 하는 커뮤니티형 사이트는 프로그래밍 언어의 사용이 필수적입니다.
두 번째는 HTML과 CSS가 배우기 쉬운 언어이기 때문입니다. 저 또한 초등학생 때 홈페이지 만들기를 하며 HTML과 CSS를 익혔었고 독학만으로도 어느 정도 원하는 디자인을 구현할 만큼 실력을 쌓을 수 있었습니다. 심지어 마크업 언어는 코딩이 아닌 프로그램으로도 만들 수 있습니다. 예전엔 드림위버와 나모 웹에디터가 유명했고, 지금은 피그마와 제플린 같은 전문 디자인 툴에서 HTML, CSS를 지원하기도 합니다.
그런데 개발자들은 대체로 HTML과 CSS를 싫어합니다. 그렇게 쉽다는 HTML과 CSS인데 왜 싫어하는 걸까요..?
HTML과 CSS는 정말 진짜 그렇게까지 쉬운 언어일까요..?
HTML과 CSS가 쉬운데 어려운 이유
라떼는 말이야… HTML코드를 엉망으로 짜도 디자인만 맞게 나오면 장땡이던 시절이 있었습니다. HTML과 CSS가 그렇게 발전하지 않기도 해서 <table>을 사용해 레이아웃을 나누곤 했었죠… 몇 안 되는 태그를 창의적으로 사용해 문제를 해결했습니다. (IE를 지원해야 하는 프로젝트에선 어쩔 수 없이 레거시 사용법을 고수할 때도 있습니다) 지금은 저무는 별인 플래시로 만든 화려한 웹사이트들도 많았습니다. 플래시를 설치해야만 볼 수 있는 웹사이트를 만나는 것도 대수롭지 않았었죠.
사이트의 개성들은 인터넷을 처음 접하는 사람들이 이용하기엔 큰 진입장벽으로 작용했습니다. ‘인터넷은 당연히 어렵다’라고 생각하던 사람들이 불편함을 표출했고, 웹 접근성과 웹 표준이라는 개념이 태어났습니다. 모든 사람이 평등하게 정보를 접하기 위해 중구난방이던 HTML에 권장 규격을 만들자는 것이 웹 표준의 취지였습니다.
그 외에도 HTML과 CSS가 까다로워지기 시작한 배경엔 기기의 다양화도 있습니다. 인터넷은 컴퓨터로만 가능할 줄 알았던 때가 지나고 이제는 핸드폰, tv, 심지어는 냉장고로도 브라우저에 접속할 수 있습니다. 기기마다 해상도가 천차만별이고, 뷰포트의 비율도 유동적으로 변했습니다. 그렇다고 모든 기기에 맞춰 사이트를 따로 만드는 것은 번거로운 일입니다. 모든 기기에서 유연하게 작동하는 사이트에 대한 니즈가 발생했고 그렇게 나온 것이 반응형 디자인입니다.
슬슬 머리가 아파지기 시작하지만 아직도 HTML이 까다로워지기 시작한 이유가 한 가지 더 있습니다.. 누구나 알겠지만, 검색 유입의 중요성입니다. 구글에 ‘강아지’를 검색해보겠습니다. 우와, 검색 결과가 62,400,000개나 되네요. 인터넷엔 정말 많은 정보들이 쌓여있고 특정 키워드 검색 시 자신의 사이트가 상단에 뜨게 하기 위해 많은 돈을 지불하는 사람들도 있습니다. 하지만 사이트에 SEO(검색 엔진 최적화)를 적용시킨다면 돈을 쓸 필요 없이 검색 결과 1페이지에 올릴 수도 있습니다. 사이트 노출은 매우 중요하기 때문에 SEO 전문 업체가 있기도 하죠.
HTML과 CSS… 쉽긴 쉽지만… 이젠 막 그렇게 쉽지도 않은 것 같습니다.
다음 편에선 HTML, CSS 코딩을 할 때 신경쓰면 좋은 것들을 하나씩 알아보겠습니다.
[HTML과 CSS 그냥 코딩하면 되나요? 시리즈]
1. HTML과 CSS가 쉽지만 어려운 이유
2. 웹표준과 웹 접근성
3. 반응형 웹
legacy 지식을 업데이트 할 목적으로 정리한 글입니다.
잘못된 부분이 있다면 편히 지적해주세요!