ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [HTML&CSS] CSS 우선순위 적용 (!important)
    programming/HTML&CSS 2019. 11. 10. 00:00
    반응형

    https://pixabay.com/ko/ - important

    디자이너와 개발자가 따로 작업을 할 경우,

    남이 만든 HTML&CSS에 내가 직접 스타일을 입히고 싶을 경우,

    CSS, JS, HTML 파일이 완전히 분리된 상황에서 어느 것이 먼저 인지 헷갈릴 경우 등,

    CSS 우선순위를 알아야 할 경우는 많다.

     

    이때 무조건 !important 속성을 붙여서 해도 되긴 하지만,

    적용 순서를 알아보면 !important 속성을 사용하지 않아도 적용할 수 있는 방법이 많다.

    css_important.html
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    <!DOCTYPE html>
    <html>
    <head>
        <meta charset='utf-8'>
        <meta http-equiv='X-UA-Compatible' content='IE=edge'>
        <title>Page Title</title>
        <meta name='viewport' content='width=device-width, initial-scale=1'>
        <style>
                h1{
                    color : yellow !important;
                }
            </style>
        <link rel='stylesheet' type='text/css' media='screen' href='main.css'>
        <script src='main.js'></script>
        <style>
            h1{
                color : orange;
            }
            #div2{
                background-color : gray !important;
            }
        </style>
    </head>
    <body>
        <div id="div1">
            <h1 style="color:green !important">test h1-1</h1>        
            <h1 style="color:blue !important">test h1-2</h1>        
            <h1>test h1-3</h1>        
        </div>
        
        <hr>
     
        <div id="div2" style="background:yellowgreen;">
            <h2 style="color:red;">test h2-1</h2>        
            <h2 style="color:thistle">test h2-2</h2>        
            <h2>test h2-3</h2>        
        </div>
    </body>
    </html>

     

    main.css
    1
    2
    3
    4
    5
    6
    7
    h1{
        color : red;
    }
     
    h2{
        color : purple;
    }

     

    위의 코드를 보면 여러가지 방법으로 스타일을 적용시켰다.

    • 외부 css파일을 html에 삽입
    • <style> 태그를 사용해 스타일 적용
    • 외부 css파일 적용전 / 적용 후에 <style> 태그 사용
    • 태그에 style 속성에 직접 사용
    • !important 사용

    해당 목록과 같이 여러 가지로 사용할 수 있다.

    기본적으로 외울 스타일 순서는

    나중에 적용된 스타일 또는 !important 다.

     

    나중에 적용된다는 말은 코드가 아래로 실행될 때 가장 아래에 있는 코드로 실행된다는 것이다.

    그래서 html에 <style> 태그로 적용을 해도 외부의 main.css가 적용되기 전에 발생하면,

    main.css가 나중에 수행되므로 main.css의 스타일을 따른다.

    그리고 <style>이 main.css보다 뒤에 수행된다면,

    html에 선언된 <style> 태그의 스타일이 적용된다.

     

    이러한 모든 것들은 무시하고 싶다면 !important 속성에 적어주면 된다.

    모두 다 !important로 적용되어 있다면, 

    첫 번째처럼 뒤에 적용된 태그로 스타일이 적용된다.

    반응형

    댓글

Designed by Tistory.