땅지원
땅지원's Personal blog
땅지원
전체 방문자
오늘
어제
  • 전체 (353)
    • Frontend (2)
      • React (2)
    • Backend (90)
      • Java (16)
      • Python (19)
      • Spring (23)
      • Database (21)
      • Troubleshooting (8)
    • DevOps (27)
      • ELK (13)
    • CS (40)
    • OS (2)
      • Linux (2)
    • Algorithm (95)
      • concept (18)
      • Algorithm Problem (77)
    • 인공지능 (25)
      • 인공지능 (12)
      • 연구노트 (13)
    • 수업정리 (35)
      • 임베디드 시스템 (10)
      • 데이터통신 (17)
      • Linux (8)
    • 한국정보통신학회 (5)
      • 학술대회 (4)
      • 논문지 (1)
    • 수상기록 (8)
      • 수상기록 (6)
      • 특허 (2)
    • 삼성 청년 SW 아카데미 (6)
    • 42seoul (12)
    • Toy project (3)
    • 땅's 낙서장 (2)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

  • 20.11.6 BB21플러스 온라인 학술대회
  • 20.10.30 한국정보통신학회 온라인 학술대회

인기 글

태그

  • ㅗ
  • E
  • 이것이 리눅스다 with Rocky Linux9
  • D
  • I

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
땅지원

땅지원's Personal blog

CSS 기본 지식
CS

CSS 기본 지식

2022. 7. 5. 14:27

주석 : /**/ 

웹페이지 검사를 실시하면서 margin, padding 같은 사소한 것들을 잡아내보자

https://caniuse.com/

 

Can I use... Support tables for HTML5, CSS3, etc

 

caniuse.com

● <link>

<link rel="stylesheet" href="style.css">

css파일을 따로 만든다음에 html 파일 위에 추가해서 css를 추가한다.

 

● id, class, tag 우선순위

  <style>
    #active {
      color:red;
    }
    .saw {
      color:gray;
    }
    a {
      color:black;
      text-decoration: none;
    }
    h1 {
      font-size:45px;
      text-align: center;
    }
  </style>
</head>
<body>
  <h1><a href="index.html">WEB</a></h1>
  <ol>
    <li><a href="1.html" class="saw">HTML</a></li>
    <li><a href="2.html" class="saw" id="active">CSS</a></li>
    <li><a href="3.html">JavaScript</a></li>
  </ol>

CSS의 style에서 id > class > tag 우선순위를 정할 수 있다.

 

● Block, Inline element

<h1>은 한줄 전체를 쓰는 block level element이고 <a>는 inline element이기 때문에 자신의 컨텐츠 크기만큼 블록을 차지한다.

하지만 그림처럼 display의 값을 변경하면 자유롭게 사용 가능

    <style>
        h1{
            border-width:5px;
            border-color:red;
            border-style: solid;
            display:inline;
        }
        a{
            border-width:5px;
            border-color:red;
            border-style: solid;
            display:block;
        }
    </style>

border : 테두리
border - width : 테두리 두께
border - color : 테두리 컬러
border - style : 테두리의 스타일 ex) 단선인지 실선인지

block level element : 화면 전체를 쓰는 태그
inline element :  자기 자신의 크기만큼 갖는 태그

display : 속성 ex)inline, block
display : none; 태그를 안 보이게 할 수 있음.

padding : 콘텐츠와 테두리 사이의 여백
margin : 테두리와 테두리사이의 간격

● 그리드(Grid)

block level element를 사용하려면 div (디자인 하는데 사용) -> 화면 전체를 쓰기 때문에 자동 줄바꿈
inline level element를 사용하려면 span
grid를 사용하면 상자간의 비율을 조절할 수 있고 상자 안에 넣는 글자수에 따라 자동으로 크기가 조정됨.
선택자를 쓸 때도 선택자가 많아지면 어떤 것을 그리드 하는지 헷갈릴 수 있음.
따라서 #grid ol 이런 식으로 그리드 뒤에 선택자를 붙여줘서 구분

    <style>
        #grid{
            border:5px solid pink;
            display:grid;
            grid-template-columns:150px 1fr
        }
        div{
            border:5px solid gray;
        }
    </style>
</head>
<body>
<div id="grid">
    <div>땅지원</div>
    <div>이지원</div>
</div>

'grid-template-columns'에 대해서 첫번째 인자는 웹페이지 크기에 상관없이 고정적인 150px 이라는 값을 가지고 두번째 인자는 1fr, 나머지 비율에 대한 전체를 가지게 된다.

 

1fr 1fr을 하게되면 두 인자는 1:1의 비율로 웹페이지의 크기에 따라 1:1의 비율을 가지고 변화

2fr 1fr을 하게되면 두 인자는 2:1의 비율로 웹페이지의 크기에 따라 2:1의 비율을 가지고 변화

1fr 2fr 1fr도 똑같이 1:2:1의 비율로 변화

<style>
    #grid{
      display: grid;
      grid-template-columns: 150px 1fr;
    }
    #grid ol{
      padding-left:33px;
    }
    #grid #article{
      padding-left:25px;
    }
  </style>

id grid안에 있는 <ol> tag와 id article에 대한 부분을 따로 style 지정 할 수 있음

 

 

● 반응형 미디어

다양한 웹페이지의 모습에 따라 보여지는 모습을 다르게 하고 싶을 때 설정하는 것

ex) 가로가 800px이하일 때 웹페이지의 구성이 달라지게 하고싶다.

/*screen width > 800px*/
<style>
    @media(min-width:800px){
        div{
            display:none;
        }
    }
</style>

/*screen width < 800px*/
<style>
    @media(max-width:800px){
        div{
            display:none;
        }
    }
</style>

max: 800보다 작을 때 아래 명령이 작동된다. 

min: 800이상 부터 아래 명령이 작동된다.

'CS' 카테고리의 다른 글

HTTP(HyperText Transfer Protocol)  (0) 2022.09.06
JavaScript 기본 지식  (0) 2022.09.02
REST와 JSON에 대해  (0) 2022.05.13
리눅스 Git 설치 밎 사용법  (1) 2022.01.21
.gitignore을 이용하여 commit하기  (0) 2022.01.11
    'CS' 카테고리의 다른 글
    • HTTP(HyperText Transfer Protocol)
    • JavaScript 기본 지식
    • REST와 JSON에 대해
    • 리눅스 Git 설치 밎 사용법
    땅지원
    땅지원
    신입 개발자의 우당탕탕 기술 블로그

    티스토리툴바