✨
Saltberry
GithubLinkedIn
  • 개요 Overview
  • 📝HTML/CSS
    • 구조 HTML
    • 스타일 CSS
      • z-index
  • 📦개발 Development
    • 개발 Implementation
    • 단어 Glosarry
    • 깃 Git
    • 해시 Hash
    • 노드 패키지 매니저 Node Package Manager
    • 브라우저 랜더링 Browser Rendering Process
    • 교차 출처 리소스 공유 CORS
    • 인터프리터 Interpreter
    • Object-oriented programming(OOP) 객체지향 프로그래밍
  • 💡CS 50
    • Computational Thinking
  • 🖥️WEB
    • Web storage
  • ✨자바스크립트 Javascript
    • 자바스크립트란 What is JavaScript
    • 표현식과 문 Expression Statement
    • 변수 Variable
    • 함수 Function
    • 참과 거짓 값 Truth Falsy
    • 배열 Array
    • Import Export
    • 스택과 큐 Stack Queue
    • 문서객체모델 Document Object Model
      • 개요 Overview
      • 도큐먼트 Document
      • HTMLCollection
      • getMethod
      • NodeList
      • childNodes, children
      • Event
      • live, static
      • Element
      • DOM Token
      • 속성 attribute
      • implementation
      • 노드 Node
      • HTMLElement
    • 브라우저 저장소 Cookie Web Storage
  • 🎁리액트 React
    • 리액트 톧아보기 Overview
    • Intro
      • 상태의 불변성 State Immutability
      • Props and State
      • Hooks
    • Concepts
  • 🚦타입스크립트 Typescript
    • Page 1
  • 🗃️리덕스 Redux
    • 왜 리덕스를 사용할까 Why Redux
    • 플럭스 Flux
  • 📬넥스트 Nextjs
    • Pages
  • ✅면접 Interview
    • Index
    • Implement experiences
    • Best practice for query parameter and fetch
  • 🚀TECH
    • Lists
    • Zustand
  • 🧬Algorithm
    • Types of algorithms
    • 이진수 변환 Binary Number
    • 후위 연산자 Postfix expression
    • 선택 정렬 Selection Sort
    • Find longest substring without repeating characters
    • 올바른 괄호 Valid Parentheses
  • 📔Mathematics
    • 다항식 Polynomial
  • 🗂️Database
    • 데이터베이스 Database
  • 📝Class
    • 자료구조 Data Structure
      • 배열 Array
    • C++ 프로그래밍
      • C++ 기초
    • 소프트웨어 공학 Software engineering
      • 소프트웨어 개요 Software overview
      • 소프트웨어 프로세스 Software process
    • 자바 Java
      • 자바와 객체지향 프로그래밍 Java and OOP(Object-oriented programming)
  • Java
    • 자바가 뭐지?
  • CA EI
    • CA EI
Powered by GitBook
On this page
  1. HTML/CSS

스타일 CSS

Cascading Style Sheets

CSS로 하는게 비용이 적게 들기 때문에 가능하다면 CSS로 처리하는게 좋다.

/* absolute는 최대한 지양하고 다른 방법을 활용해보자 */

main {
    display: table;
    height: 540px;
    
    div {
        display: table-row;
        height: 60px;
    }
}

parent {
    child {
        height: 100%;
        overflow-x: hidden;
}

parent {
    display: flex;
    flex-direction: column;
    
    child {
      flex: 1 1 100%;  
    }
    
    child {
        flex: 1 1 80px;
    }
}

parent {
    child{
        position: stikcy;
        bottom: 0;
    }
}
/* ellipsis */

dt {
    overflow: hidden;
    word-break: break-all;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* 줄 단위 */

dt {
    overflow: hidden;
    word-break: break-all;
    text-overflow: ellipsis;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

/* truncation */

dt {
    word-break: break-word;
    word-wrap: break-word;
}
/* 반응형은 media query, min/max 하나로 정해서 이용하기 */

@media screen and (min-width: ${NARROW_PC}) {
    display: none;
}

/* 해당 미디어에만 적용 */

@media print only (min-width: ${TABLET}) {
    background: #111;
}
/* 의미없는 이미지/아이콘은 백그라운드 처리 */

div {
    background: transparent url(${heartIcon}) left 12px bottom 12px / 20px no-repeat;
}
/* 클릭 영역을 고려해서 Margin, Padding 설정하기 */

a {
    padding: 12px 0 24px;
}
/* 선택자를 잘 활용하기 */

div > span {
    font-weight: 500;
}

div + span {
    color: #888;
}
/* 요소 뒤에 추가 (&는 this와 유사) */

&::after {
    content: "|";
}

/* 마지막 요소 선택 */

&:last-child::after {
    display: none;
}
/* flex 단 나누기 */

.parent {
    display: flex;
    gap: 24px;
    
    .child {
    
        /* flex 내 자식 요소 grow, shrink에 대해서 이해하기 */
        flex: 1 1 40%;
    }
}
/* 윈도우에서는 다르게 보이기 때문에 원하는 곳에만 스크롤 바가 생길 수 있게 */

div {
    overflow-x :hidden;
}
/* MOBILE FIRST라면 default는 MOBILE에 맞추어 작성하기 */

main {
    background: #fff;
    
    @media screen and (min-width: ${NARROW_PC}) {
        background: #eee;
    }
}
/* li는 inline 속성이기에 button의 영역을 잡을 땐 block 등으로 변경 필요 */

li {
    display: block;
    
    button {
        /* 버튼 스타일 */
    }
}
/* 오브젝트 크기에 맞게 조절 */

a {
 width: object-fit; 
}
/* 하위 레이어 선택 */

div {
    pointer-events: none;
}

Last updated 1 year ago

📝