CSS3

 

 

 

 

https://braverokmc79.github.io/tailwind-clipboard-website/

 

https://github.dev/braverokmc79/tailwind-clipboard-website

 

 

 

1.설정 및 구성
 

 

  • 프로젝트 설정:

    • 'Simple Tailwind Starter'를 복사해 프로젝트 폴더에 붙여 넣고 npm install 명령어로 패키지를 설치한 후, npm run watch를 실행해 개발 환경을 설정합니다.
  • 이미지 및 SVG 파일 준비:

    • 프로젝트에 사용할 이미지를 'project assets' 폴더에서 가져와 root 폴더에 저장합니다.
    • SVG 파일은 성능 문제로 직접 HTML 파일에 넣는 것이 좋지만, 이 프로젝트에서는 이미지 태그를 사용해 관리합니다.
  • Tailwind 설정 수정:

    • Tailwind 설정 파일(tailwind.config.js)에서 화면 크기와 색상에 대한 설정을 추가합니다.
    • 화면 크기: 480px, 768px, 976px, 1440px의 breakpoint를 설정합니다.
    • 색상: Strong Cyan, Light Blue, Dark Grayish Blue, Grayish Blue 등의 커스텀 색상을 추가합니다.
  • 글꼴 설정:

    • Google Fonts에서 'Nanum Gothic' 폰트를 가져와 HTML 파일에 추가하고, Tailwind의 fontFamily 속성에 추가합니다.

 

 

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <!-- 구글 폰트 및 외부 스타일시트 연결 -->
    <link rel="preconnect" href="https://fonts.googleapis.com" />
    <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
    <link
      href="https://fonts.googleapis.com/css2?family=Bai+Jamjuree:wght@400;600&display=swap"
      rel="stylesheet"
    />
    <link href="https://fonts.googleapis.com/css2?family=Nanum+Gothic:wght@400;700;800&display=swap" rel="stylesheet">
    <link rel="stylesheet" href="css/style.css" />
    <title>클립보드 웹사이트</title>
  </head>
  <body>



</body>
</html>

 

 

tailwind.config.js

module.exports = {
  content: ['./*.html'],
  theme: {
    screens: {
      sm: '480px',
      md: '768px',
      lg: '976px',
      xl: '1440px',
    },
    extend: {
      colors: {
        strongCyan: 'hsl(171, 66%, 44%)',
        lightBlue: 'hsl(233, 100%, 69%)',
        darkGrayishBlue: 'hsl(210, 10%, 33%)',
        grayishBlue: 'hsl(201, 11%, 66%)',
      },
      fontFamily: {
        sans: ['Nanum Gothic', 'sans-serif'],
      },
    },
  },
  plugins: [],
}

 

 

 

 

1. Hero 섹션

Hero 섹션은 웹사이트의 첫인상을 결정짓는 중요한 부분으로, 로고와 헤딩, 설명, 다운로드 버튼을 포함합니다.

Hero 섹션 HTML 코드:

 

<section id="hero">
  <div class="section-container mb-40 pt-16">
    <img src="images/logo.svg" alt="" class="mx-auto my-16" />
    <h3 class="font-sans text-4xl font-bold text-darkGrayishBlue mb-8">
      복사한 모든 것의 기록
    </h3>
    <p class="section-content mb-10 text-2xl text-grayishBlue">
      클립보드를 사용하면 복사한 모든 항목을 추적하고 정리할 수 있습니다.
      모든 기기에서 클립보드를 즉시 사용할 수 있습니다.
    </p>
    <div class="button-container flex flex-col md:flex-row space-y-4 md:space-y-0 md:space-x-4">
      <a href="#" class="p-4 px-8 rounded-full shadow-lg bg-strongCyan duration-200 hover:opacity-80">
        iOS 다운로드
      </a>
      <a href="#" class="p-4 px-8 rounded-full shadow-lg bg-lightBlue duration-200 hover:opacity-80">
        Mac용 다운로드
      </a>
    </div>
  </div>
</section>

 

설명:

  • section-container: Hero 섹션을 감싸는 컨테이너로, Tailwind 클래스를 사용하여 여백 및 패딩을 설정합니다.
  • 로고 이미지: mx-auto 클래스를 사용해 가운데 정렬하고, my-16으로 상하 여백을 추가합니다.
  • 제목 (H3): font-sans, text-4xl, font-bold, text-darkGrayishBlue, mb-8 클래스를 사용하여 폰트, 크기, 색상, 여백을 설정합니다.
  • 설명 (Paragraph): section-content, mb-10, text-2xl, text-grayishBlue 클래스를 사용하여 텍스트 스타일을 설정합니다.
  • 버튼: button-container 클래스를 사용하여 버튼을 수직 및 수평으로 정렬하며, Tailwind 클래스 p-4, px-8, rounded-full, shadow-lg, bg-strongCyan, bg-lightBlue, duration-200, hover:opacity-80를 사용해 스타일을 지정합니다.

 

 

 

2. Snippets 섹션

Snippets 섹션 HTML 코드:

<section id="snippets">
  <div class="section-container my-20">
    <h3 class="text-3xl font-semibold mb-6">스니펫을 추적하세요</h3>
    <p class="section-content text-xl text-grayishBlue mb-24">
      클립보드는 복사한 모든 항목을 클라우드에 즉시 저장하므로 모든 기기에서
      스니펫에 쉽게 접근할 수 있습니다. Mac과 iOS 앱으로 모든 항목을 정리할 수 있습니다.
    </p>
  </div>
</section>

 

설명:

  • 제목 (H3): text-3xl, font-semibold, mb-6 클래스를 사용하여 제목의 크기, 폰트 두께, 여백을 설정합니다.
  • 설명 (Paragraph): section-content, text-xl, text-grayishBlue, mb-24 클래스를 사용하여 설명의 스타일을 설정합니다.

 

 

3. Features 섹션

Features 섹션 HTML 코드:

<section id="features">
  <div class="section-container my-20">
    <div class="relative flex flex-col md:flex-row md:space-x-32">
      <div class="md:w-1/2">
        <img src="images/image-computer.png" alt="" class="md:absolute top-0 right-0" />
      </div>
      <div class="flex flex-col mt-16 mb-24 space-y-12 text-xl md:w-1/2 md:mb-60 md:text-left md:pl-16">
        <div>
          <h5 class="text-2xl font-semibold mb-4">빠른 검색</h5>
          <p class="max-w-md text-grayishBlue">
            스니펫을 내용, 카테고리, 웹 주소, 애플리케이션 등으로 쉽게 검색하세요.
          </p>
        </div>
        <div>
          <h5 class="text-2xl font-semibold mb-4">iCloud 동기화</h5>
          <p class="max-w-md text-grayishBlue">
            모든 기기에서 스니펫이 즉시 저장되고 동기화됩니다.
          </p>
        </div>
        <div>
          <h5 class="text-2xl font-semibold mb-4">완전한 기록</h5>
          <p class="max-w-md text-grayishBlue">
            앱 사용을 시작한 첫 순간부터 모든 스니펫을 검색할 수 있습니다.
          </p>
        </div>
      </div>
    </div>
  </div>
</section>

 

설명:

  • 이미지: relative, md:absolute, top-0, right-0 클래스를 사용하여 이미지의 위치를 조정합니다.
  • 기능 설명: 각 기능 설명 블록에 대해 text-2xl, font-semibold, mb-4 클래스를 사용하여 제목의 스타일을 설정하고, max-w-md, text-grayishBlue 클래스를 사용하여 텍스트 스타일을 설정합니다.

 

 

 

4. Access Anywhere 섹션

Access Anywhere 섹션 HTML 코드:

 

<section id="access">
  <div class="section-container my-20">
    <h3 class="text-3xl font-semibold mb-6">어디서나 클립보드에 접근하세요</h3>
    <p class="section-content text-xl text-grayishBlue mb-24">
      이동 중이든 컴퓨터 앞에 있든, 몇 번의 클릭만으로 모든 스니펫에 접근할 수 있습니다.
    </p>
    <img src="images/image-devices.png" alt="" class="mx-auto" />
  </div>
</section>

 

설명:

  • 제목 (H3): text-3xl, font-semibold, mb-6 클래스를 사용하여 제목의 크기, 폰트 두께, 여백을 설정합니다.
  • 설명 (Paragraph): section-content, text-xl, text-grayishBlue, mb-24 클래스를 사용하여 설명의 스타일을 설정합니다.
  • 이미지: mx-auto 클래스를 사용하여 이미지를 가운데 정렬합니다.

 

 

 

5. Supercharge 섹션

Supercharge 섹션 HTML 코드:

<section id="supercharge">
  <div class="section-container my-20">
    <h3 class="text-3xl font-semibold mb-6">작업 흐름을 강화하세요</h3>
    <p class="section-content text-xl text-grayishBlue mb-16">
      생산성을 높일 수 있는 도구를 제공합니다.
    </p>
    <div class="flex flex-col md:flex-row items-center justify-between space-y-16 md:space-y-0 md:space-x-12">
      <div class="flex flex-col items-center space-y-5">
        <img src="images/icon-blacklist.svg" alt="" class="mb-6" />
        <h5 class="text-2xl font-semibold">블랙리스트 생성</h5>
        <p class="text-grayishBlue max-w-md">
          특정 스니펫을 검색하거나 관리할 수 있습니다.
        </p>
      </div>
      <div class="flex flex-col items-center space-y-5">
        <img src="images/icon-text.svg" alt="" class="mb-6" />
        <h5 class="text-2xl font-semibold">평문 텍스트 스니펫</h5>
        <p class="text-grayishBlue max-w-md">
          복사한 텍스트에서 불필요한 서식을 제거하고 일관된 형식을 유지하세요.
        </p>
      </div>
      <div class="flex flex-col items-center space-y-5">
        <img src="images/icon-preview.svg" alt="" class="mb-6" />
        <h5 class="text-2xl font-semibold">미리보기</h5>
        <p class="text-grayishBlue max-w-md">
          클립보드의 모든 스니펫을 빠르게 미리 볼 수 있습니다.
        </p>
      </div>
    </div>
  </div>
</section>

 

 

설명:

  • 기능 설명: 각 기능 설명 블록에 대해 text-2xl, font-semibold, mb-6 클래스를 사용하여 제목의 스타일을 설정하고, text-grayishBlue, max-w-md 클래스를 사용하여 텍스트 스타일을 설정합니다.
  • 아이콘 이미지: mb-6 클래스를 사용하여 여백을 설정합니다.

 

 

 

Bottom CTA (Call-to-Action) 섹션

이 섹션은 iOS 및 Mac 앱 다운로드 링크를 제공하는 부분입니다. 간단한 제목과 설명 문구, 그리고 두 개의 버튼으로 구성됩니다.

개발 과정:

  1. 섹션 컨테이너 설정:

<section id="bottom">
  <div class="section-container my-20">

 

section-container 클래스는 이 프로젝트 전반에 걸쳐 일관된 스타일을 유지하도록 설정되었습니다.

 

헤딩 및 설명 추가:

<h3>iOS 및 Mac용 클립보드</h3>
<p class="section-content mb-10 text-xl">
  앱스토어에서 무료로 제공됩니다. Mac 또는 iOS용으로 다운로드하고 iCloud와 동기화하여 사용을 시작하세요.
</p>

 

section-container 클래스는 이 프로젝트 전반에 걸쳐 일관된 스타일을 유지하도록 설정되었습니다.

 

헤딩 및 설명 추가:

<h3>iOS 및 Mac용 클립보드</h3>
<p class="section-content mb-10 text-xl">
  앱스토어에서 무료로 제공됩니다. Mac 또는 iOS용으로 다운로드하고 iCloud와 동기화하여 사용을 시작하세요.
</p>
  • section-content: 텍스트에 일관된 스타일을 적용.
  • mb-10: 하단에 여백을 추가하여 텍스트와 버튼 간 간격을 조정.

 

버튼 추가:

<div class="button-container">
  <a href="#" class="p-4 px-8 rounded-full shadow-lg bg-strongCyan duration-200 hover:opacity-80">iOS 다운로드</a>
  <a href="#" class="p-4 px-8 rounded-full shadow-lg bg-lightBlue duration-200 hover:opacity-80">Mac용 다운로드</a>
</div>

 

 

 

3. Footer 섹션

푸터는 로고, 메뉴, 그리고 소셜 아이콘으로 구성된 최하단 섹션입니다. 반응형 디자인을 통해 작은 화면에서는 세로로, 큰 화면에서는 가로로 정렬됩니다.

개발 과정:

  1. 푸터 컨테이너 설정:

<footer class="bg-gray-50">
  <div class="section-container">
    <div class="flex flex-col items-center justify-between md:flex-row">

 

    • 푸터는 bg-gray-50 배경 색상을 사용해 구분되며, Flexbox를 통해 아이템들이 정렬됩니다.
  • 로고 및 메뉴 추가:

  •  

<img src="images/logo.svg" alt="" class="scale-50" />
<div class="flex flex-col space-y-4 text-center md:text-left">
  <div><a href="#" class="hover:text-strongCyan">FAQ</a></div>
  <div><a href="#" class="hover:text-strongCyan">연락처</a></div>
</div>
    • 메뉴는 FAQ, 연락처 등으로 구성되고, hover 시 글자 색상이 변하는 효과를 추가했습니다.
  • 소셜 아이콘 추가:

<div class="flex justify-between w-32 py-1">
  <a href="#"><img src="images/icon-facebook.svg" alt="" /></a>
  <a href="#"><img src="images/icon-twitter.svg" alt="" /></a>
  <a href="#"><img src="images/icon-instagram.svg" alt="" /></a>
</div>

 

 

각 아이콘에 hover 효과를 적용해 색상이 변경되도록 했습니다.

 

 

 

 

전체

<!DOCTYPE html>
<html lang="ko">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <!-- 구글 폰트 및 외부 스타일시트 연결 -->
    <link rel="preconnect" href="https://fonts.googleapis.com" />
    <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
    <link
      href="https://fonts.googleapis.com/css2?family=Bai+Jamjuree:wght@400;600&display=swap"
      rel="stylesheet"
    />
    <link href="https://fonts.googleapis.com/css2?family=Nanum+Gothic:wght@400;700;800&display=swap" rel="stylesheet">
    <link rel="stylesheet" href="css/style.css" />
    <title>Clipboard Website</title>
  </head>
  <body>
    <!-- Hero 섹션: 로고, 헤딩, 설명, iOS/Mac 다운로드 버튼 -->
    <section id="hero">
      <div class="section-container mb-40 pt-16">
        <img src="images/logo.svg" alt="" class="mx-auto my-16" />
        <h3 class="font-sans">복사한 모든 것의 기록</h3>
        <p class="section-content mb-10 text-2xl">
          클립보드를 사용하면 복사한 모든 항목을 추적하고 정리할 수 있습니다.
          모든 기기에서 클립보드를 즉시 사용할 수 있습니다.
        </p>
        <div class="button-container">
          <a
            href="#"
            class="p-4 px-8 rounded-full shadow-lg bg-strongCyan duration-200 hover:opacity-80"
          >
            iOS 다운로드
          </a>
          <a
            href="#"
            class="p-4 px-8 rounded-full shadow-lg bg-lightBlue duration-200 hover:opacity-80"
          >
            Mac용 다운로드
          </a>
        </div>
      </div>
    </section>

    <!-- Snippets 섹션: 클립보드 기능 설명 -->
    <section id="snippets">
      <div class="section-container my-20">
        <h3>스니펫을 추적하세요</h3>
        <p class="section-content mb-24 text-xl">
          클립보드는 복사한 모든 항목을 클라우드에 즉시 저장하므로 모든 기기에서
          스니펫에 쉽게 접근할 수 있습니다. Mac과 iOS 앱으로 모든 항목을 정리할 수 있습니다.
        </p>
      </div>
    </section>

    <!-- Features 섹션: 주요 기능 3가지 소개 -->
    <section id="features">
      <div class="section-container my-20">
        <div class="relative flex flex-col md:flex-row md:space-x-32">
          <div class="md:w-1/2">
            <img
              src="images/image-computer.png"
              alt=""
              class="md:absolute top-0 right-[50%]"
            />
          </div>
          <div
            class="flex flex-col mt-16 mb-24 space-y-12 text-xl md:w-1/2 md:mb-60 md:text-left md:pl-16"
          >
            <div>
              <h5>빠른 검색</h5>
              <p class="max-w-md text-grayishBlue">
                스니펫을 내용, 카테고리, 웹 주소, 애플리케이션 등으로 쉽게 검색하세요.
              </p>
            </div>
            <div>
              <h5>iCloud 동기화</h5>
              <p class="max-w-md text-grayishBlue">
                모든 기기에서 스니펫이 즉시 저장되고 동기화됩니다.
              </p>
            </div>
            <div>
              <h5>완전한 기록</h5>
              <p class="max-w-md text-grayishBlue">
                앱 사용을 시작한 첫 순간부터 모든 스니펫을 검색할 수 있습니다.
              </p>
            </div>
          </div>
        </div>
      </div>
    </section>

    <!-- Access Anywhere 섹션: 어디서든지 클립보드 접근 가능 -->
    <section id="access">
      <div class="section-container my-20">
        <h3>어디서나 클립보드에 접근하세요</h3>
        <p class="section-content mb-24 text-xl">
          이동 중이든 컴퓨터 앞에 있든, 몇 번의 클릭만으로 모든 스니펫에 접근할 수 있습니다.
        </p>
        <img src="images/image-devices.png" alt="" class="mx-auto" />
      </div>
    </section>

    <!-- Supercharge 섹션: 생산성 향상 도구 소개 -->
    <section id="supercharge">
      <div class="section-container my-20">
        <h3>작업 흐름을 강화하세요</h3>
        <p class="section-content mb-16 text-xl">
          생산성을 높일 수 있는 도구를 제공합니다.
        </p>
        <div class="flex flex-col items-center justify-between space-y-16 md:flex-row md:space-y-0 md:space-x-12">
          <div class="flex flex-col items-center space-y-5">
            <img src="images/icon-blacklist.svg" alt="" class="mb-6" />
            <h5>블랙리스트 생성</h5>
            <p class="max-w-md text-grayishBlue">
              특정 스니펫을 검색하거나 관리할 수 있습니다.
            </p>
          </div>
          <div class="flex flex-col items-center space-y-5">
            <img src="images/icon-text.svg" alt="" class="mb-6" />
            <h5>평문 텍스트 스니펫</h5>
            <p class="max-w-md text-grayishBlue">
              복사한 텍스트에서 불필요한 서식을 제거하고 일관된 형식을 유지하세요.
            </p>
          </div>
          <div class="flex flex-col items-center space-y-5">
            <img src="images/icon-preview.svg" alt="" class="mb-6" />
            <h5>미리보기</h5>
            <p class="max-w-md text-grayishBlue">
              클립보드의 모든 스니펫을 빠르게 미리 볼 수 있습니다.
            </p>
          </div>
        </div>
      </div>
    </section>


    <!-- References 섹션: 협력사 로고 -->
    <section id="references">
      <div
        class="flex flex-col items-center justify-between max-w-6xl px-10 mx-auto space-y-16 my-44 md:flex-row md:space-y-0"
      >
        <img src="images/logo-google.png" alt="" />
        <img src="images/logo-ibm.png" alt="" />
        <img src="images/logo-microsoft.png" alt="" />
        <img src="images/logo-hp.png" alt="" />
        <img src="images/logo-vector-graphics.png" alt="" />
      </div>
    </section>

    <!-- Bottom CTA 섹션: 다운로드 링크 제공 -->
    <section id="bottom">
      <div class="section-container my-20">
        <h3>iOS 및 Mac용 클립보드</h3>
        <p class="section-content mb-10 text-xl">
          앱스토어에서 무료로 제공됩니다. Mac 또는 iOS용으로 다운로드하고 iCloud와 동기화하여 사용을 시작하세요.
        </p>
        <div class="button-container">
          <a
            href="#"
            class="p-4 px-8 rounded-full shadow-lg bg-strongCyan duration-200 hover:opacity-80"
          >
            iOS 다운로드
          </a>
          <a
            href="#"
            class="p-4 px-8 rounded-full shadow-lg bg-lightBlue duration-200 hover:opacity-80"
          >
            Mac용 다운로드
          </a>
        </div>
      </div>
    </section>

    <!-- Footer 섹션: 푸터에 메뉴와 소셜 아이콘 포함 -->
    <footer class="bg-gray-50">
      <div class="section-container">
        <div class="flex flex-col items-center justify-between md:flex-row">
          <img src="images/logo.svg" alt="" class="scale-50" />
          <div
            class="flex flex-col items-center justify-between flex-1 mb-10 space-y-6 md:flex-row md:mb-0 md:space-y-0 text-grayishBlue"
          >
            <div
              class="flex flex-col space-y-4 md:flex-row md:ml-24 md:space-x-24 md:space-y-0"
            >
              <div class="flex flex-col space-y-4 text-center md:text-left">
                <div><a href="#" class="hover:text-strongCyan">FAQ</a></div>
                <div><a href="#" class="hover:text-strongCyan">연락처</a></div>
              </div>
              <div class="flex flex-col space-y-4 text-center md:text-left">
                <div><a href="#" class="hover:text-strongCyan">개인정보 보호</a></div>
                <div><a href="#" class="hover:text-strongCyan">이용 약관</a></div>
              </div>
            </div>
            <div class="flex justify-between w-32 py-1">
              <a href="#"><img src="images/icon-facebook.svg" alt="" /></a>
              <a href="#"><img src="images/icon-twitter.svg" alt="" /></a>
              <a href="#"><img src="images/icon-instagram.svg" alt="" /></a>
            </div>
          </div>
        </div>
      </div>
    </footer>
  </body>
</html>

 

 

 

 

style.css

/*
! tailwindcss v3.0.24 | MIT License | https://tailwindcss.com
*/

/*
1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4)
2. Allow adding a border to an element by just adding a border-width. (https://github.com/tailwindcss/tailwindcss/pull/116)
*/

*,
::before,
::after {
  box-sizing: border-box;
  /* 1 */
  border-width: 0;
  /* 2 */
  border-style: solid;
  /* 2 */
  border-color: #e5e7eb;
  /* 2 */
}

::before,
::after {
  --tw-content: '';
}

/*
1. Use a consistent sensible line-height in all browsers.
2. Prevent adjustments of font size after orientation changes in iOS.
3. Use a more readable tab size.
4. Use the user's configured `sans` font-family by default.
*/

html {
  line-height: 1.5;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
  -moz-tab-size: 4;
  /* 3 */
  -o-tab-size: 4;
     tab-size: 4;
  /* 3 */
  font-family: Nanum Gothic ,Bai Jamjuree, sans-serif;
  /* 4 */
}

/*
1. Remove the margin in all browsers.
2. Inherit line-height from `html` so users can set them as a class directly on the `html` element.
*/

body {
  margin: 0;
  /* 1 */
  line-height: inherit;
  /* 2 */
}

/*
1. Add the correct height in Firefox.
2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)
3. Ensure horizontal rules are visible by default.
*/

hr {
  height: 0;
  /* 1 */
  color: inherit;
  /* 2 */
  border-top-width: 1px;
  /* 3 */
}

/*
Add the correct text decoration in Chrome, Edge, and Safari.
*/

abbr:where([title]) {
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
}

/*
Remove the default font size and weight for headings.
*/

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
}

/*
Reset links to optimize for opt-in styling instead of opt-out.
*/

a {
  color: inherit;
  text-decoration: inherit;
}

/*
Add the correct font weight in Edge and Safari.
*/

b,
strong {
  font-weight: bolder;
}

/*
1. Use the user's configured `mono` font family by default.
2. Correct the odd `em` font sizing in all browsers.
*/

code,
kbd,
samp,
pre {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/*
Add the correct font size in all browsers.
*/

small {
  font-size: 80%;
}

/*
Prevent `sub` and `sup` elements from affecting the line height in all browsers.
*/

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/*
1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)
2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)
3. Remove gaps between table borders by default.
*/

table {
  text-indent: 0;
  /* 1 */
  border-color: inherit;
  /* 2 */
  border-collapse: collapse;
  /* 3 */
}

/*
1. Change the font styles in all browsers.
2. Remove the margin in Firefox and Safari.
3. Remove default padding in all browsers.
*/

button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: inherit;
  /* 1 */
  color: inherit;
  /* 1 */
  margin: 0;
  /* 2 */
  padding: 0;
  /* 3 */
}

/*
Remove the inheritance of text transform in Edge and Firefox.
*/

button,
select {
  text-transform: none;
}

/*
1. Correct the inability to style clickable types in iOS and Safari.
2. Remove default button styles.
*/

button,
[type='button'],
[type='reset'],
[type='submit'] {
  -webkit-appearance: button;
  /* 1 */
  background-color: transparent;
  /* 2 */
  background-image: none;
  /* 2 */
}

/*
Use the modern Firefox focus style for all focusable elements.
*/

:-moz-focusring {
  outline: auto;
}

/*
Remove the additional `:invalid` styles in Firefox. (https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737)
*/

:-moz-ui-invalid {
  box-shadow: none;
}

/*
Add the correct vertical alignment in Chrome and Firefox.
*/

progress {
  vertical-align: baseline;
}

/*
Correct the cursor style of increment and decrement buttons in Safari.
*/

::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height: auto;
}

/*
1. Correct the odd appearance in Chrome and Safari.
2. Correct the outline style in Safari.
*/

[type='search'] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
}

/*
Remove the inner padding in Chrome and Safari on macOS.
*/

::-webkit-search-decoration {
  -webkit-appearance: none;
}

/*
1. Correct the inability to style clickable types in iOS and Safari.
2. Change font properties to `inherit` in Safari.
*/

::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */
}

/*
Add the correct display in Chrome and Safari.
*/

summary {
  display: list-item;
}

/*
Removes the default spacing and border for appropriate elements.
*/

blockquote,
dl,
dd,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
figure,
p,
pre {
  margin: 0;
}

fieldset {
  margin: 0;
  padding: 0;
}

legend {
  padding: 0;
}

ol,
ul,
menu {
  list-style: none;
  margin: 0;
  padding: 0;
}

/*
Prevent resizing textareas horizontally by default.
*/

textarea {
  resize: vertical;
}

/*
1. Reset the default placeholder opacity in Firefox. (https://github.com/tailwindlabs/tailwindcss/issues/3300)
2. Set the default placeholder color to the user's configured gray 400 color.
*/

input::-moz-placeholder, textarea::-moz-placeholder {
  opacity: 1;
  /* 1 */
  color: #9ca3af;
  /* 2 */
}

input:-ms-input-placeholder, textarea:-ms-input-placeholder {
  opacity: 1;
  /* 1 */
  color: #9ca3af;
  /* 2 */
}

input::placeholder,
textarea::placeholder {
  opacity: 1;
  /* 1 */
  color: #9ca3af;
  /* 2 */
}

/*
Set the default cursor for buttons.
*/

button,
[role="button"] {
  cursor: pointer;
}

/*
Make sure disabled buttons don't get the pointer cursor.
*/

:disabled {
  cursor: default;
}

/*
1. Make replaced elements `display: block` by default. (https://github.com/mozdevs/cssremedy/issues/14)
2. Add `vertical-align: middle` to align replaced elements more sensibly by default. (https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210)
   This can trigger a poorly considered lint error in some tools but is included by design.
*/

img,
svg,
video,
canvas,
audio,
iframe,
embed,
object {
  display: block;
  /* 1 */
  vertical-align: middle;
  /* 2 */
}

/*
Constrain images and videos to the parent width and preserve their intrinsic aspect ratio. (https://github.com/mozdevs/cssremedy/issues/14)
*/

img,
video {
  max-width: 100%;
  height: auto;
}

/*
Ensure the default browser behavior of the `hidden` attribute.
*/

[hidden] {
  display: none;
}

h3 {
  margin-bottom: 2rem;
  font-size: 2.25rem;
  line-height: 2.5rem;
  font-weight: 700;
  --tw-text-opacity: 1;
  color: hsl(210 10% 33% / var(--tw-text-opacity));
}

@media (min-width: 768px) {
  h3 {
    font-size: 3rem;
    line-height: 1;
  }
}

h5 {
  margin-bottom: 0.5rem;
  font-size: 1.5rem;
  line-height: 2rem;
  font-weight: 700;
  --tw-text-opacity: 1;
  color: hsl(210 10% 33% / var(--tw-text-opacity));
}

*, ::before, ::after {
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x:  ;
  --tw-pan-y:  ;
  --tw-pinch-zoom:  ;
  --tw-scroll-snap-strictness: proximity;
  --tw-ordinal:  ;
  --tw-slashed-zero:  ;
  --tw-numeric-figure:  ;
  --tw-numeric-spacing:  ;
  --tw-numeric-fraction:  ;
  --tw-ring-inset:  ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur:  ;
  --tw-brightness:  ;
  --tw-contrast:  ;
  --tw-grayscale:  ;
  --tw-hue-rotate:  ;
  --tw-invert:  ;
  --tw-saturate:  ;
  --tw-sepia:  ;
  --tw-drop-shadow:  ;
  --tw-backdrop-blur:  ;
  --tw-backdrop-brightness:  ;
  --tw-backdrop-contrast:  ;
  --tw-backdrop-grayscale:  ;
  --tw-backdrop-hue-rotate:  ;
  --tw-backdrop-invert:  ;
  --tw-backdrop-opacity:  ;
  --tw-backdrop-saturate:  ;
  --tw-backdrop-sepia:  ;
}

.relative {
  position: relative;
}

.top-0 {
  top: 0px;
}

.right-\[50\%\] {
  right: 50%;
}

.mx-auto {
  margin-left: auto;
  margin-right: auto;
}

.my-16 {
  margin-top: 4rem;
  margin-bottom: 4rem;
}

.my-20 {
  margin-top: 5rem;
  margin-bottom: 5rem;
}

.my-44 {
  margin-top: 11rem;
  margin-bottom: 11rem;
}

.mb-40 {
  margin-bottom: 10rem;
}

.mb-10 {
  margin-bottom: 2.5rem;
}

.mb-24 {
  margin-bottom: 6rem;
}

.mt-16 {
  margin-top: 4rem;
}

.mb-16 {
  margin-bottom: 4rem;
}

.mb-6 {
  margin-bottom: 1.5rem;
}

.flex {
  display: flex;
}

.w-32 {
  width: 8rem;
}

.max-w-md {
  max-width: 28rem;
}

.max-w-6xl {
  max-width: 72rem;
}

.flex-1 {
  flex: 1 1 0%;
}

.scale-50 {
  --tw-scale-x: .5;
  --tw-scale-y: .5;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.flex-col {
  flex-direction: column;
}

.items-center {
  align-items: center;
}

.justify-between {
  justify-content: space-between;
}

.space-y-12 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(3rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(3rem * var(--tw-space-y-reverse));
}

.space-y-16 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(4rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(4rem * var(--tw-space-y-reverse));
}

.space-y-5 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(1.25rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(1.25rem * var(--tw-space-y-reverse));
}

.space-y-6 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(1.5rem * var(--tw-space-y-reverse));
}

.space-y-4 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(1rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(1rem * var(--tw-space-y-reverse));
}

.rounded-full {
  border-radius: 9999px;
}

.bg-strongCyan {
  --tw-bg-opacity: 1;
  background-color: hsl(171 66% 44% / var(--tw-bg-opacity));
}

.bg-lightBlue {
  --tw-bg-opacity: 1;
  background-color: hsl(233 100% 69% / var(--tw-bg-opacity));
}

.bg-gray-50 {
  --tw-bg-opacity: 1;
  background-color: rgb(249 250 251 / var(--tw-bg-opacity));
}

.p-4 {
  padding: 1rem;
}

.px-8 {
  padding-left: 2rem;
  padding-right: 2rem;
}

.px-10 {
  padding-left: 2.5rem;
  padding-right: 2.5rem;
}

.py-1 {
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
}

.pt-16 {
  padding-top: 4rem;
}

.text-center {
  text-align: center;
}

.text-2xl {
  font-size: 1.5rem;
  line-height: 2rem;
}

.text-xl {
  font-size: 1.25rem;
  line-height: 1.75rem;
}

.text-grayishBlue {
  --tw-text-opacity: 1;
  color: hsl(201 11% 66% / var(--tw-text-opacity));
}

.shadow-lg {
  --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.duration-200 {
  transition-duration: 200ms;
}

.section-container {
  margin-left: auto;
  margin-right: auto;
  max-width: 72rem;
  padding-left: 2.5rem;
  padding-right: 2.5rem;
  text-align: center;
}

.section-content {
  margin-left: auto;
  margin-right: auto;
  max-width: 48rem;
  text-align: center;
  line-height: 2.25rem;
  --tw-text-opacity: 1;
  color: hsl(201 11% 66% / var(--tw-text-opacity));
}

.button-container {
  display: flex;
  width: 100%;
  flex-direction: column;
  justify-content: center;
}

.button-container > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(1.5rem * var(--tw-space-y-reverse));
}

.button-container {
  font-size: 1.25rem;
  line-height: 1.75rem;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}

@media (min-width: 768px) {
  .button-container {
    flex-direction: row;
  }

  .button-container > :not([hidden]) ~ :not([hidden]) {
    --tw-space-y-reverse: 0;
    margin-top: calc(0px * calc(1 - var(--tw-space-y-reverse)));
    margin-bottom: calc(0px * var(--tw-space-y-reverse));
    --tw-space-x-reverse: 0;
    margin-right: calc(1rem * var(--tw-space-x-reverse));
    margin-left: calc(1rem * calc(1 - var(--tw-space-x-reverse)));
  }
}

body {
  background-image: url('../images/bg-header-desktop.png');
  background-repeat: no-repeat;
  background-size: contain;
}

@media (max-width: 576px) {
  body {
    background-image: url('../images/bg-header-mobile.png');
  }
}

.ficon:hover {
  filter: invert(53%) sepia(68%) saturate(434%) hue-rotate(121deg)
    brightness(101%) contrast(94%);
}

.hover\:text-strongCyan:hover {
  --tw-text-opacity: 1;
  color: hsl(171 66% 44% / var(--tw-text-opacity));
}

.hover\:opacity-80:hover {
  opacity: 0.8;
}

@media (min-width: 768px) {
  .md\:absolute {
    position: absolute;
  }

  .md\:mb-60 {
    margin-bottom: 15rem;
  }

  .md\:mb-0 {
    margin-bottom: 0px;
  }

  .md\:ml-24 {
    margin-left: 6rem;
  }

  .md\:w-1\/2 {
    width: 50%;
  }

  .md\:flex-row {
    flex-direction: row;
  }

  .md\:space-x-32 > :not([hidden]) ~ :not([hidden]) {
    --tw-space-x-reverse: 0;
    margin-right: calc(8rem * var(--tw-space-x-reverse));
    margin-left: calc(8rem * calc(1 - var(--tw-space-x-reverse)));
  }

  .md\:space-y-0 > :not([hidden]) ~ :not([hidden]) {
    --tw-space-y-reverse: 0;
    margin-top: calc(0px * calc(1 - var(--tw-space-y-reverse)));
    margin-bottom: calc(0px * var(--tw-space-y-reverse));
  }

  .md\:space-x-12 > :not([hidden]) ~ :not([hidden]) {
    --tw-space-x-reverse: 0;
    margin-right: calc(3rem * var(--tw-space-x-reverse));
    margin-left: calc(3rem * calc(1 - var(--tw-space-x-reverse)));
  }

  .md\:space-x-24 > :not([hidden]) ~ :not([hidden]) {
    --tw-space-x-reverse: 0;
    margin-right: calc(6rem * var(--tw-space-x-reverse));
    margin-left: calc(6rem * calc(1 - var(--tw-space-x-reverse)));
  }

  .md\:pl-16 {
    padding-left: 4rem;
  }

  .md\:text-left {
    text-align: left;
  }
}

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

about author

PHRASE

Level 60  라이트

올바른 자는 자기의 욕망을 조정하지만, 올바르지 않은 자는 욕망에 조정당한다. -탈무드

댓글 ( 0)

댓글 남기기

작성

CSS3 목록    more