e_yejun
Jun_ : Pwn
e_yejun
전체 방문자
오늘
어제
  • 분류 전체보기 (240)
    • Profile (1)
    • Pwnable (54)
    • Reversing (14)
    • Network (8)
    • Forensic (10)
    • Embedded (4)
    • Android (2)
    • Web (18)
    • 알고리즘 (42)
    • 프로그래밍 (24)
    • 프로젝트 (6)
    • 1-day (7)
    • CTF (15)
    • 기타 (33)
    • 일기장 (0)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • wargame
  • x64
  • Heap
  • dvwa
  • X86
  • rev-basic
  • BOF
  • 1-day
  • dreamhack.io
  • how2heap

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
e_yejun

Jun_ : Pwn

프로그래밍

[CSS] CSS의 기본적인 이해와 사용방식

2020. 5. 2. 05:17

 

CSS(Cascading Style Sheets)란?

HTML, XHTML, XML 같은 문서의 스타일을 꾸밀 때 사용하는 스타일 시트 언어이다.

문서의 내용과 표현을 분리하여 CSS 파일 하나만 수정하면 스타일에 해당하는 HTML문서를 한번에 수정할 수 있다.

 

 

CSS의 장점

1. 다양한 기능의 확장

  - HTML에서 지원하지 않는 다양한 글자 크기의 지정 및 변경이 가능하다.

 

2. 통일된 문서양식 제공

  - 한 번의 속성 정의로 여러 문서에서 동시에 다양하게 적용할 수 있다. (문서 형식의 모듈화)

 

3. 사용자 환경과 상관없는 독립된 문서 제작 가능

  - 브라우저에 따라서 HTML 문서의 결과물이 다르게 표시되는 경우가 있다. CSS를 사용하면 이를 방지할 수 있다.

 

4. 문서 형식의 다양화

  - 기존 HTML 문서를 더욱 다양하고 멋지게 꾸밀 수 있다.

 

5. 로딩시간 단축

  - 통일된 문서양식을 제공함으로써 브라우저가 읽어야 하는 문자의 수가 작아지기 때문에 로딩시간이 단축된다.

 

 

 

CSS 사용방법

 

1. 외부 스타일 시트

  - HTML 문서와는 별도로 스타일만을 설정한 CSS 파일을 만들어 사용하는 방식

<head>
    <link rel="stylesheet" type="text/css" href="mystyle.css">
</head>

디자인 파일을 따로 관리하여 홈페이지 스타일을 일관성 있게 유지/보수하며 효율성 극대화

코드가 복잡해지면 전문적인 이해도가 필요하다.

 

 

 

2. 내부 스타일 시트

  - HTML의 문서에 CSS를 삽입하는 방식으로 <HEAD> 태그 안에 <STYLE> 태그를 사용하여 스타일 정의

<head>
 <style type="text/css">
 <!--
     h1 {color:red} 
 -->
 </style>
</head>

한 가지 문서에는 따로 css 파일을 만드는 것보다 이 방식을 사용하는 것이 적절하다.

 

* HTML의 주석 : '<!--', '-->'

* CSS의 주석 : '/*', '*/'

 

CSS를 정의한 부분에 HTML 주석을 넣은 이유

  - 대응하지 않는 브라우저에서 CSS 소스가 그대로 표시될 경우가 있기 때문이다.

 

 

 

3. HTML 내 스타일 지정 (인라인 방식)

  - 각 태그에 직접 스타일을 적용하는 방법

<p style="font-size: 20px;">글자 크기 20px</p>

스타일에 대한 일괄 변경이 불가능한 비효율적인 방식이다. 하지만 특정 상황에서 직관적이고, 수정이 빠르고 간편하여 테스트나 개발할 때 주로 사용된다.

 

 

 

CSS 적용 우선순위

* 속성값 뒤에 !important; 를 붙인 속성 -> 최우선순위

 

 

 

기본 문법

h1 {
  color: green;
}

- 선택자(h1) : 무엇을 꾸밀지 정합니다.

- 속성(color) : 어떤 모양을 꾸밀지 나타낸다. 

- 값(red) : 어떻게 꾸밀 것인지 나타낸다.

 

=> 속성과 값을 합쳐서 선언이라고 한다.

 

 

하나의 선택자의 여러 개의 선언

h1 {
  color: green;
  font-size: 15px;
}

콜론( : )으로 속성과 값을 구분하고, 세미콜론( ; )으로 구분하여 선언을 여러 개 할 수 있다.

 

 

값에 공백이 포함하는 경우

h1 {
  color: green;
  font-size: 15px;
  font-family: "맑은 고딕";
}

이 때 (" ")를 사용해도 되고 (' ')를 사용해도 된다.

 

 

 

문제 1 )

// mystyle.css

@charset="UTF-8"

.test{color:blue;}



// mystyle.html

<html>
<head>

    <link rel="stylesheet" type="text/css" href="mystyle.css"> // 외부 스타일
       
	<style> // 내부 스타일
		.test {color:green;}
	</style>

</head>

<body>

<h1 style="color:pink" class="test">무슨 색일까요?</h1> // 인라인

</body>
</html>

 

 

문제 2)

// mystyle.css

@charset="UTF-8"

.test{color:blue!important;}



// mystyle.html

<html>
<head>

    <link rel="stylesheet" type="text/css" href="mystyle.css"> // 외부 스타일
       
	<style> // 내부 스타일
		.test {color:green;}
	</style>

</head>

<body>

<h1 style="color:pink" class="test">무슨 색일까요?</h1> // 인라인

</body>
</html>

 

Q. 각각 출력되는 글자는 무슨 색일까?

 

 

 

 

    '프로그래밍' 카테고리의 다른 글
    • [Python] 디렉토리에서 원하는 파일목록 리스트로 가져오기
    • [Python] print 함수 반환값 변수에 저장
    • [Java] 자바란?
    • [Python] 문자열 옵션 및 메소드
    e_yejun
    e_yejun
    정리노트 •_•

    티스토리툴바