의견.png

"CSS"의 두 판 사이의 차이

위키원
이동: 둘러보기, 검색
(문제점과 대안)
(문제점과 대안)
48번째 줄: 48번째 줄:
  
 
== 문제점과 대안 ==
 
== 문제점과 대안 ==
@import 규칙으로 불러들인 CSS 파일은 그 갯수 만큼 서버에서 요청이 늘어남으로써 로딩 속도에 상당한 악영향을 미친다.
+
@import 규칙으로 불러들인 CSS 파일은 그 갯수 만큼 서버에서 요청이 늘어남으로써 로딩 속도에 상당한 악영향을 미치고
 
@import 규칙은 병렬방식이 아닌 직렬 방식으로 다운로드하기 때문에 전체 로딩시 그 만큼의 로딩 시간도 길어지는 문제점이 있다.
 
@import 규칙은 병렬방식이 아닌 직렬 방식으로 다운로드하기 때문에 전체 로딩시 그 만큼의 로딩 시간도 길어지는 문제점이 있다.
 
심지어, 인터넷 익스플로러에서는 다운로드 순서가 다르게 작동하는 문제가 발생하기도 한다.
 
심지어, 인터넷 익스플로러에서는 다운로드 순서가 다르게 작동하는 문제가 발생하기도 한다.

2019년 7월 22일 (월) 17:50 판

CSS는 Cascading Style Sheets의 약자로서, 웹 문서의 색상, 폰트, 레이아웃 등을 표현하기 위해 사용하는 스타일 시트 언어이다. 씨에스에스라고 읽는다. 종속형 시트 또는 캐스케이딩 스타일 시트라고도 한다. 1996년 CSS1, 1998년 CSS2, 2005년 CSS3가 발표되었다.

개요

CSS는 웹 페이지의 모양과 느낌을 처리한다. CSS는 텍스트 색상, 글꼴 스타일, 문단 간격, 열 크기 및 배치 방법, 사용되는 배경 이미지 또는 색상, 레이아웃 설계 등 여러 가지를 제어할 수 있다. CSS는 배우기 쉽고 이해하기 쉬우면서도 HTML 문서를 강력하게 제어할 수 있다. 보통 일반적으로 HTMLXHTML에서 주로 쓰인다.

등장배경

웹페이지를 아름답게 디자인하는 방법은 두 가지가 있다 쉬운 것은 HTML 에 직접적으로 style 태그를 추가하는 것이다. 다른 방법은 이보다 어렵기는 하지만 근본적 해결책이라고 할 수 있는 CSS이다. CSS없이 HTML만 배우는 것은 흑백으로 그림을 그리는 것과 같다. 어떠한 그림이든 그릴 수는 있어도 아름다운 색들을 쓸수가 없기 때문이다. <style>이란 태그는 HTML의 문법이면서 동시에 이 <style>이라는 태그 안쪽에 있는 내용은 CSS니까 이것을 CSS라는 언어의 문법에 맞게 해석해서 처리해야 한다. 이 코드를 통해 태그가 1개 이거나 10억개 여도 순식간에 바뀌는 폭발적인 효과를 얻을 수 있다. 생활 코딩에서는 코딩을 어떻게 잘할지가 아니라 어떻게 할지에 집중한다고 한다. 하지만 유일하게 코딩을 잘하는 방법은 바로 '중복의 제거'이다. 만약 <a> 라는 태그가 10억개가 있는데 중복하여 스타일을 적용시킨다면 이 웹페이지의 사이즈는 어마어마하게 커질 것 이다. 따라서 CSS의 코드를 이용해 같은 성격의 것을 한번에 바꿀 수 있는 것은 유지 보수를 편하게 하며 가독성을 높일 것 이다. 그리고 HTML은 중요하기에 정보라는 특성에 전념하여 HTML로 부터 디자인의 기능을 뻿어 등장하게 되었다.기존의 HTML은 웹 문서를 다양하게 설계하고 수시로 변경하는데 많은 제약이 따르는데, 이를 보완하기 위해 만들어진 것이 스타일 시트이고 스타일 시트의 표준안이 바로 CSS이다. 간단히 스타일 시트라고도 한다. HTML을 이용해서 웹 페이지를 제작할 경우 전반적인 틀에서 세세한 글꼴 하나 하나를 일일이 지정해주어야 하지만, 웹 페이지의 스타일(작성형식)을 미리 저장해 두면 웹 페이지의 한 가지 요소만 변경해도 관련되는 전체 페이지의 내용이 한꺼번에 변경되므로, 문서 전체의 일관성을 유지할 수 있고 작업 시간도 단축된다. 따라서 웹 개발자들은 보다 풍부한 디자인으로 웹을 설계할 수 있고, 글자의 크기, 글자체, 줄간격, 배경 색상, 배열위치 등을 자유롭게 선택하거나 변경할 수 있으며 유지·보수도 간편하게 할 수 있다. [1]

역사

CSS는 1994년 하콤 비움 리(Håkon Wium Lie)가 발명했으며 W3C(World Wide Web Consortium)에서 관리하였다.

  • CSS1 : 1996년 12월 W3C에서 권고 사항으로 나왔다. 이 버전은 모든 HTML의 태그에 대한 간단한 시각적 포맷 모델뿐 아니라 CSS의 언어에 대하여 설명한다.
  • CSS2 : 1998년 5월 W3C의 권장 사항이 되었으며 CSS1을 기반으로 구축되었다. 이 버전은 프린터 및 청각 장치, 다운로드가 가능한 글꼴, 엘레먼트(element) 위치 지정(positioning) 등을 지원한다.
  • CSS3 : 2005년 12월 W3C의 권장 사항이 되었으며 역시 이전 버전이 기반이 되었다. 글자의 특수 효과나 간단한 애니메이션 구현이 가능하게 되었다.
  • CSS4 : 하나의 통합된 CSS4 사양이 없이 여러 개의 모듈로 나뉘어져 있다.

특징

  • Cascading Style Sheet
  • 웹문서에 스타일을 적용하기 위한 언어
  • 웹문서의 내용을 구성하는 html과 웹문서의 스타일 선언하는 CSS 문법을 분리함으로써 코드를 간결해 지기 때문에 오류와 버그의 확률이 줄고 수정이 편리, 유지보수가 용이해 진다.
  • 위줄에서부터 스타일 적용되어 마지막에 선언된 스타일이 최종 표현되기 때문에 선언 순서가 중요. [2]
  • 골격(태그 + 데이터)과 서식을 분리

종류

Internal (Embed) 방식

  • 스타일을 적용하려는 특정문서에 직접 선언
  • 선언된 특정 문서에만 스타일이 적용
  • 일반적으로 head요소 내부에 style태그를 이용

External (Linked) 방식

  • 별도의 CSS 문서를 작성해서 스타일을 적용하려는 html문서에 연결
  • 한번의 스타일 선언으로 여러 html문서에 동일한 스타일 적용 가능
  • head요소 안에 link태그를 이용

Inline 방식

  • 스타일을 적용하려는 태그에 직접 선언하는 방식
  • style 이라는 태그 속성을 이용
  • 유지보수가 불편, 코드가 길어짐
  • 응급조치, 테스트용으로 사용 [3]

장단점

장점

  • 기능의 확장성 : HTML의 대부분의 요소들의 단순한 기능에 다양한 기능을 추가할 수 있으며 기능 변경도 가능하다.
  • 양식의 모듈화 : 웹사이트 전체에 문서의 양식을 통일감 있게 사용할 수 있다.
  • 간편성 : 문서의 형식을 쉽고 다양하게 구성할 수 있다.

단점

CSS는 브라우저 간 호환성 문제가 있다. CSS는 인터넷 익스플로러, 구글 크롬, 애플 사파리, 모질라 파이어폭스 등 각 브라우저별로 서로 조금씩 다른 방식으로 스타일 시트를 지원하기 때문에 통일성이 유지되기 어려운 단점이 있다.

문제점과 대안

@import 규칙으로 불러들인 CSS 파일은 그 갯수 만큼 서버에서 요청이 늘어남으로써 로딩 속도에 상당한 악영향을 미치고 @import 규칙은 병렬방식이 아닌 직렬 방식으로 다운로드하기 때문에 전체 로딩시 그 만큼의 로딩 시간도 길어지는 문제점이 있다. 심지어, 인터넷 익스플로러에서는 다운로드 순서가 다르게 작동하는 문제가 발생하기도 한다. 다시 말해서, 각 역할에 따라 분리한 CSS 파일을 웹 문서에서 적용할 때는 @import 규칙으로 호출하면 안되고, HTML 문서 내에 <link> 태그 요소를 사용하여 호출하는 방법을 권장한다.


각주

  1. 네이버 지식백과 홈페이지 - https://terms.naver.com/entry.nhn?docId=1179641&cid=40942&categoryId=32854
  2. [CSS 1] CSS 특징 및 적용방법 :: - https://hihellen.tistory.com/16
  3. [CSS 1] CSS 특징 및 적용방법 :: - https://hihellen.tistory.com/16

참고자료

같이 보기


  의견.png 이 CSS 문서는 프로그래밍에 관한 토막글입니다. 위키 문서는 누구든지 자유롭게 편집할 수 있습니다. [편집]을 눌러 이 문서의 내용을 채워주세요.