본문 바로가기
지식을 알아가는 시간 지식을 알아가는 시간

HTML 과 CSS의 차이점: 뼈대와 디자인의 관계 정리

읽는 시간 약 11분

웹사이트를 이루는 두 가지 핵심 요소

우리가 매일 마주하는 수많은 웹사이트는 어떻게 만들어질까. 화면에 보이는 화려한 이미지와 정돈된 글자, 그리고 버튼을 누를 때 일어나는 반응까지 이 모든 것은 사실 철저하게 역할이 분담된 기술들의 협업으로 이루어진다.

웹을 이루는 기술은 여러 가지가 있지만 그중에서도 가장 기초가 되는 두 가지를 꼽으라면 단연 HTML과 CSS를 들 수 있다. 이 두 가지를 이해하는 것은 웹의 세계로 들어가는 가장 첫 번째 관문이다.

많은 사람들이 웹 개발을 배운다고 하면 복잡한 프로그래밍 언어와 수많은 코드부터 떠올리며 겁을 먹는다. 하지만 HTML과 CSS는 엄밀히 말해 프로그래밍 언어가 아니라 마크업 언어와 스타일시트 언어에 가깝다. 즉 논리적인 연산을 수행하는 것이 아니라 문서를 구조화하고 꾸미는 역할을 한다.

이 두 가지가 정확히 무엇이고 어떤 차이가 있는지 이해하는 것만으로도 웹페이지를 바라보는 시각이 완전히 달라지게 된다.

HTML은 웹페이지의 뼈대를 만드는 건축의 골조

HTML은 HyperText Markup Language의 약자다. 이름에 이미 그 정체성이 담겨 있는데 텍스트를 뛰어넘어 서로 연결해 주는 문서 작성 언어라는 뜻이다.

웹사이트에서 HTML이 담당하는 역할은 한마디로 뼈대와 구조를 잡는 것이다. 건물을 지을 때 철근과 콘크리트로 건물의 전체적인 모양과 방의 배치를 먼저 완성하는 것과 정확히 같다.

웹사이트에서 글자를 적고, 사진을 넣고, 링크를 걸고, 표를 만드는 모든 작업은 HTML이 담당한다. 여기에는 어떤 디자인적 요소도 들어가지 않는다.

글자가 커야 할지 작아야 할지, 색깔은 파란색이어야 할지 빨간색이어야 할지 HTML은 전혀 신경 쓰지 않는다. 오직 이것이 제목인지, 본문인지, 이미지인지, 혹은 클릭할 수 있는 버튼인지 그 의미와 정보만을 전달하는 데 집중한다.

HTML의 기본 단위는 태그라고 부르는 것들이다. 꺾쇠괄호 사이에 단어를 넣어 이 부분이 어떤 역할을 하는지 컴퓨터에게 알려준다. 예를 들어 제목을 나타내는 태그가 감싸고 있다면 브라우저는 이를 제목으로 인식하고 본문을 나타내는 태그가 있다면 본문으로 인식한다.

이처럼 정보의 위계질서를 잡고 콘텐츠를 올바른 순서대로 배치하는 것이 HTML의 유일하면서도 가장 중요한 임무다.

CSS는 웹페이지에 옷을 입히는 인테리어와 스타일링

CSS는 Cascading Style Sheets의 약자다. HTML이 건물의 골조를 세우는 일이라면 CSS는 그 건물 내부를 멋지게 인테리어하고 외관에 아름다운 색을 칠하는 역할이다.

뼈대만 덩그러니 있는 건물에는 사람이 살기 불편한 것처럼, HTML로만 이루어진 웹페이지는 텍스트와 이미지만 나열되어 있어 매우 밋밋하고 보기 불편하다.

CSS가 등장하면서 웹 디자인의 세계는 완전히 혁신되었다. 과거에는 글자 색상을 바꾸거나 크기를 조절하려면 HTML 문서 안에 일일이 디자인 코드를 적어 넣어야 했다.

그러다 보니 웹사이트의 규모가 커질수록 코드가 복잡해지고 수정하기도 끔찍하게 어려워졌다. 하지만 CSS가 분리되면서 디자인과 관련된 모든 코드를 한곳에 모아 관리할 수 있게 되었다.

CSS를 사용하면 웹페이지의 배경색을 바꾸고, 글꼴을 세련된 것으로 변경하고, 버튼에 마우스를 올렸을 때 색이 변하게 만드는 등의 시각적 효과를 자유자재로 구현할 수 있다.

심지어 요즘처럼 스마트폰, 태블릿, 데스크톱 등 다양한 기기에서 접속하는 시대에는 화면 크기에 맞춰 디자인이 알아서 변하는 반응형 웹 디자인을 구현하는 데도 CSS가 절대적인 역할을 한다.

뼈대와 디자인이 분리되어 얻을 수 있는 강력한 장점들

HTML과 CSS가 각각 뼈대와 디자인으로 역할을 나누고 있다는 점은 웹 생태계에 엄청난 효율성을 가져다주었다. 만약 이 두 가지가 하나로 섞여 있었다면 우리는 웹사이트를 유지 보수할 때마다 지옥을 경험했을 것이다.

첫 번째 장점은 유지 보수의 극적인 효율성이다. 예를 들어 수백 페이지로 이루어진 대기업 웹사이트에서 모든 페이지의 상단 메뉴 색상을 파란색에서 초록색으로 바꿔야 한다고 가정해 보자.

CSS가 없다면 수백 개의 HTML 파일을 열어서 디자인 코드를 일일이 수정해야 할 것이다. 하지만 CSS를 사용한다면 연결된 스타일시트 파일 하나만 수정하면 전체 웹사이트의 디자인이 단 몇 초 만에 바뀐다.

두 번째 장점은 작업의 분업화다. 구조를 짜는 일과 디자인을 꾸미는 일이 분리되어 있기 때문에 웹퍼블리셔나 디자이너는 시각적인 디자인과 레이아웃에 집중할 수 있고, 개발자는 데이터 구조와 기능 구현에 집중할 수 있다. 이로 인해 프로젝트 진행 속도가 훨씬 빨라지고 전문성이 높아지게 된다.

세 번째 장점은 검색엔진 최적화와 접근성 향상이다. 검색엔진은 웹사이트를 방문할 때 디자인을 보는 것이 아니라 HTML이 제공하는 뼈대와 구조를 읽는다. HTML이 올바르게 작성되어 있다면 검색엔진은 해당 사이트의 내용을 정확히 파악하고 더 높은 순위에 노출시켜 준다.

또한 시각 장애인을 위한 화면 읽기 프로그램도 HTML의 구조 정보를 바탕으로 작동하기 때문에 뼈대를 튼튼하게 만드는 것은 사회적 책임이기도 하다.

HTML과 CSS의 관계를 이해하기 쉽게 살펴보는 예시

두 기술의 차이를 가장 직관적으로 이해하는 방법은 인간의 몸에 비유해 보는 것이다. HTML은 뼈대와 장기, 그리고 근육에 해당한다. 눈이 어디에 있고 코가 어디에 있는지 그 위치와 구성을 결정하는 것이다.

반면 CSS는 우리가 입는 옷, 화장, 그리고 헤어스타일에 해당한다. 뼈대는 그대로 둔 채 옷만 갈아입혀도 전혀 다른 분위기를 낼 수 있는 것과 같다.

자동차로 비유하자면 HTML은 철판으로 만든 차체와 엔진, 바퀴의 배치 구조다. 자동차가 앞으로 가기 위해 반드시 필요한 물리적 형태다.

CSS는 그 차체에 칠해진 페인트 색상, 광택, 시트의 가죽 질감, 그리고 멋진 휠 디자인에 해당한다. 엔진이 없으면 차가 움직이지 않듯 HTML이 없으면 웹페이지가 작동하지 않지만, 페인트가 안 칠해졌다고 해서 운전 자체를 못 하는 것은 아닌 것과 비슷한 이치다.

실제 코드로 살펴보면 차이가 더 명확하다. HTML 코드는 단지 이곳에 버튼이 있다는 사실만을 알려준다. 버튼 생성 코드가 브라우저를 만나면 그냥 밋밋하고 회색빛의 투박한 기본 버튼이 만들어진다.

여기에 CSS 코드를 적용하여 이 버튼의 배경색은 진한 파란색으로 하고, 글자 색은 흰색으로 바꾸며, 모서리는 둥글게 만들고, 크기는 넉넉하게 지정해 주는 식이다. 이처럼 HTML이 원재료를 제공하면 CSS가 그 위에 훌륭한 요리처럼 멋진 데코레이션을 더하는 구조다.

웹을 처음 접하는 사람들이 자주 오해하는 부분들

웹 개발에 관심을 가지기 시작하는 사람들이 가장 흔하게 하는 오해 중 하나는 HTML과 CSS를 프로그래밍 언어로 착각하고 수학적인 공식이나 알고리즘을 공부해야 한다고 걱정하는 것이다.

앞서 언급했듯이 이들은 컴퓨터와 대화하며 로직을 짜는 도구가 아니라 문서를 구조화하고 시각적으로 표현하는 일종의 약속된 규칙에 가깝다. 따라서 문법만 익히면 누구나 비교적 쉽게 배울 수 있다.

또 다른 흔한 오해는 디자인을 예쁘게 만들려면 반드시 고급 그래픽 프로그램을 잘 다루어야 한다는 생각이다. 물론 포토샵이나 일러스트레이터 같은 프로그램도 도움이 되지만 웹페이지에서의 디자인은 대부분 CSS 코드로 제어된다.

여백을 얼마나 줄지, 글자 크기를 얼마나 키울지, 색상을 조화롭게 배치할지는 그래픽 툴의 능력이 아니라 CSS 속성에 대한 이해도와 감각의 문제다.

디자인을 할 때 모든 것을 처음부터 끝까지 직접 만들려고 하는 것도 초보자들이 자주 빠지는 함정이다. 세상에는 이미 수많은 고수들이 만들어 둔 훌륭한 CSS 프레임워크나 템플릿이 존재한다.

이들을 적절히 활용하면 비용과 시간을 획기적으로 아끼면서도 전문가 수준의 깔끔한 웹사이트를 만들어낼 수 있다. 바퀴를 다시 발명할 필요가 없는 것처럼 이미 검증된 도구들을 똑똑하게 가져다 쓰는 것이 실용적인 접근이다.

실생활에서 HTML과 CSS의 지식을 활용하는 방법

웹 개발자가 될 계획이 없더라도 HTML과 CSS의 기본 개념을 알아두면 일상생활과 업무에서 쏠쏠하게 써먹을 수 있는 순간들이 많다.

요즘은 코딩을 전혀 몰라도 블로그를 운영하거나 나만의 포트폴리오 사이트를 만드는 시대다. 이때 기본적인 HTML과 CSS를 알고 있다면 플랫폼이 제공하는 기본 틀에 갇히지 않고 내가 원하는 대로 자유롭게 화면을 꾸밀 수 있다.

예를 들어 네이버 블로그나 티스토리, 워드프레스 같은 블로그 플랫폼을 이용할 때 본문의 글자 간격이 너무 답답하거나 특정 강조하고 싶은 문구의 색상을 바꾸고 싶을 때가 있다.

이때 소스보기 기능을 열어 간단한 HTML 태그나 CSS 속성을 수정할 수 있다면 답답함을 해소하고 훨씬 가독성 좋은 콘텐츠를 만들어낼 수 있다.

회사 업무에서도 유용하다. 이메일 마케팅이나 뉴스레터를 발송할 때 예쁜 디자인의 HTML 이메일을 제작해야 하는 경우가 종종 발생한다. 이때 기본적인 구조를 이해하고 있다면 디자인 부서와 원활하게 소통할 수 있고 간단한 수정 정도는 직접 처리하여 업무 효율을 극대화할 수 있다.

사내 인트라넷 게시판에 공지사항을 올릴 때도 표를 깔끔하게 정렬하거나 가독성을 높이는 데 큰 도움이 된다.

비용을 아끼며 웹 제작 능력을 키우는 효율적인 학습법

웹사이트를 하나 만들려고 할 때 외주 업체를 찾으면 생각보다 훨씬 큰 비용이 발생한다. 간단한 랜딩페이지 하나를 만드는 데도 수십만 원에서 수백만 원까지 호가하는 경우가 많다.

만약 기본적인 HTML과 CSS를 직접 익힐 수 있다면 이러한 비용을 제로로 만들 수 있을 뿐만 아니라 수정이 필요할 때마다 비용을 들여 타인의 손을 빌릴 필요가 없어진다.

인터넷상에는 비용을 들이지 않고도 HTML과 CSS를 기초부터 탄탄하게 배울 수 있는 양질의 무료 강의와 자료가 넘쳐난다. 유튜브나 각종 코딩 교육 플랫폼에서 제공하는 입문 강의를 하루에 한두 시간씩 일주일만 투자해도 기본적인 웹페이지를 직접 만들 수 있는 수준에 도달할 수 있다.

가장 비용 효율적이고 빠른 학습법은 무작정 이론만 파고드는 것이 아니라 내가 직접 보고 싶은 웹사이트를 하나 골라 그것을 똑같이 따라 만들어보는 것이다. 완벽하지 않아도 좋다.

메인 화면에 내 사진을 넣고, 제목을 적고, CSS로 배경색을 입혀보는 작은 성공 경험들이 쌓이다 보면 어느새 웹의 구조가 머릿속에 자연스럽게 그려지게 된다.

뼈대를 세우고 옷을 입히는 이 간단하지만 강력한 두 기술의 원리를 이해하는 것만으로도 디지털 시대의 강력한 무기를 손에 쥐게 되는 셈이다.

u_f4b10726
함께 보면 좋은 글

댓글 0

첫 댓글을 남겨보세요.

error: Content is protected !!

광고 차단 알림

광고 클릭 제한을 초과하여 광고가 차단되었습니다.

단시간에 반복적인 광고 클릭은 시스템에 의해 감지되며, IP가 수집되어 사이트 관리자가 확인 가능합니다.