17. Cafe25 CSS

서현우·2022년 3월 16일
0

HTML

목록 보기
10/20

style.css

@import url('https://fonts.googleapis.com/css2?family=Lato:wght@300&display=swap');

/* 자주쓰는 색을 변수로 --변수명 */
:root {
  --primary-color: #047aed;
  --secondary-color: #1c3fa8;
  --dark-color: #002240;
  --light-color: #f4f4f4;
  --success-color: #5cb85c;
  --error-color: #d9534f;
}

/* 각 태그들의 기본 마진/패딩을 초기값 0으로 하고 박스모델 기준을 보더-박스로 한다. */
* {
  /* *은 모든 태그들을 선택 */
  box-sizing: border-box;
  padding: 0;
  margin: 0;
}

body {
  font-family: 'Nanum Gothic Coding', monospace;
  color: #333;
  /* 세로줄 간격 1.6배(160%) */
  line-height: 1.6; 
}

ul {
  /* 리스트 앞의 점 없애기 */
  list-style-type: none;
}

a {
  text-decoration: none;
  color: #333;
}

h1,
h2 {
  font-weight: 300;
  line-height: 1.2;
  margin: 10px 0;
}

p {
  margin: 10px 0;
}

img {
  width: 100%;
}

code,
pre {
  background: #333;
  color: #fff;
  padding: 10px;
}

.hidden {
  /* 화면에 표시 안함. display: none;과 같음 */
  visibility: hidden;
  height: 0;
}

utilities.css

/* 자주 사용하는 형태의 CSS 들을 묶어서 클래스로 사용*/
/* 여기에 사용한 CSS는 index, docs, features 공통사용 */
.container {
    max-width: 1100px;
    margin: 0 auto;
    overflow: auto;
    padding: 0 40px;
}

.card {
    background-color:  white;
    color: #333;
    border-radius: 10px;
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.2);
    padding: 20px;
    margin: 10px;
}

/* 버튼관련 css */
.btn {
    display: inline-block;
    padding: 10px 30px;
    cursor: pointer;
    /* 변수사용시 var(변수이름) */
    background-color: var(--primary-color);
    color: #fff;
    border: none;
    border-radius: 5px;
}

.btn-outline {
    background-color: transparent;
    border: 1px solid #fff;
}

.btn:hover {
    transform: scale(0.98);
}

/* 백그라운드 색과 글자색 & 버튼색과 글자색 */
/* 바탕색이 어두우면 글자는 밝은색, 바탕이 밝으면 글자는 어두운색 */
.bg-primary,
.btn-primary {
  background-color: var(--primary-color);
  color: #fff;
}

.bg-secondary,
.btn-secondary {
  background-color: var(--secondary-color);
  color: #fff;
}

.bg-dark,
.btn-dark {
  background-color: var(--dark-color);
  color: #fff;
}

.bg-light,
.btn-light {
  background-color: var(--light-color);
  color: #333;
}

/* 예) Footer */
.bg-primary a,
.btn-primary a,
.bg-secondary a,
.btn-secondary a,
.bg-dark a,
.btn-dark a {
  color: #fff;
}

/* 글자 색 */
.text-primary {
    color: var(--primary-color);
  }
  
  .text-secondary {
    color: var(--secondary-color);
  }
  
  .text-dark {
    color: var(--dark-color);
  }
  
  .text-light {
    color: var(--light-color);
  }

  /* 글자 크기 */
.lead {
    font-size: 20px;
  }
  
  .sm {
    font-size: 1rem;
  }
  
  .md {
    font-size: 2rem;
  }
  
  .lg {
    font-size: 3rem;
  }
  
  .xl {
    font-size: 4rem;
  }
  
  /* 좌우 정렬 */
  .text-center {
    text-align: center;
  }

  /* 경고창 */
.alert {
    background-color: var(--light-color);
    padding: 10px 20px;
    font-weight: bold;
    margin: 15px 0;
  }
  
  .alert i {
    margin-right: 10px;
  }
  
  .alert-success {
    background-color: var(--success-color);
    color: #fff;
  }
  
  .alert-error {
    background-color: var(--error-color);
    color: #fff;
  }

  /* 그리드 정렬 (절반:절반) */
  .grid {
      display: grid;
      /* grid-template-columns: 1fr 1fr; //아랫줄과 같은 의미 */
      grid-template-columns: repeat(2, 1fr);
      gap: 20px;
      justify-content: center;
      align-items: center;
      height: 100%;
  }

  /* 3등분하는 grid */
  .grid-3 {
      /* 가로 3등분을 덮어씀 */
      grid-template-columns: repeat(3, 1fr);
  }

  /* 플렉스 */
  .flex {
      display: flex;
      justify-content: center;
      align-items: center;
      height: 100%;
  }

  /* 마진 */
.my-1 {
    margin: 1rem 0;
  }
  
  .my-2 {
    margin: 1.5rem 0;
  }
  
  .my-3 {
    margin: 2rem 0;
  }
  
  .my-4 {
    margin: 3rem 0;
  }
  
  .my-5 {
    margin: 4rem 0;
  }
  
  .m-1 {
    margin: 1rem;
  }
  
  .m-2 {
    margin: 1.5rem;
  }
  
  .m-3 {
    margin: 2rem;
  }
  
  .m-4 {
    margin: 3rem;
  }
  
  .m-5 {
    margin: 4rem;
  }
  
  /* 패딩 */
  .py-1 {
    padding: 1rem 0;
  }
  
  .py-2 {
    padding: 1.5rem 0;
  }
  
  .py-3 {
    padding: 2rem 0;
  }
  
  .py-4 {
    padding: 3rem 0;
  }
  
  .py-5 {
    padding: 4rem 0;
  }
  
  .p-1 {
    padding: 1rem;
  }
  
  .p-2 {
    padding: 1.5rem;
  }
  
  .p-3 {
    padding: 2rem;
  }
  
  .p-4 {
    padding: 3rem;
  }
  
  .p-5 {
    padding: 4rem;
  }
profile
안녕하세요!!

0개의 댓글