Tailwind CSSを使ってみた

Tailwind CSSとは

Tailwind CSSは、ユーティリティファーストのCSSフレームワークです。

定義がすでにされているクラス名を使用するので、コードを書く量が少なくなります。

ユーティリティファーストとは

CSSを使わずに、Tailwind CSSが提供している定義済みのクラス名だけを使用することをユーティリティファーストといいます。

ユーティリティファーストの考えをもとに作られるクラスのことをユーティリティファーストといいます。

実際に使ってみる

今回はTaiwind CSSを使って下の様なボタンを作ってみたいと思います。

Document

導入方法

今回はCDNで導入しました。
head内に下の様なコードを記載します。

<script src="https://cdn.tailwindcss.com"></script>

bodyにはボタンのHTMLを記載します。

<div class='btn'>
        <a href=''>クリック</a>
</div>

ここまでで基礎は完成です。
ここからはTailwind CSSの定義済みのクラス名のみでボタンを完成させていきます。

こちら のurlがTailwind CSSで定義されたクラスが書いてあるチートシートサイトです。
検索機能もあるのでつけたいクラスなどを検索して、該当するものを絞り込むことができます。

任意のプロパティ

Tailwind CSSにはじぶんが欲しい様なクラスがない様な時もあります。そんな時は、[]で囲むと適用されます。

例えば、padding-top: 15px; の余白を開けたい時には[padding-top:15px] とクラスに記述すると適応されます。
注意点として、[]の中身は空白があると動かなくなります。空白はあけないようにしましょう。

hoverの使い方

hoverとはcssの擬似クラスです。
擬似クラスとは、何か特別な条件を満たしているときにする動きです。

hoverはカーソルが要素の上にあった時にする動きのことです。

hoverさせたい親要素のクラスにに group と記述して、hoverさせた時の動きのクラス名の前に group-hover: と記述するだけでhoverの動きの完成です。

例えば、bg-green-600 というクラス名をホバーしたときだけにしたいのであれば、 group-hover:bg-green-60と書くだけでホバーの動きが適応されます。

完成

 出来上がったボタンがこちらです。

Document

cssで作ったコードとTailwind CSSで作ったコードを見比べてみます。

CSS

<!DOCTYPE html>
<html lang="ja">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link rel="stylesheet" href="https://unpkg.com/modern-css-reset/dist/reset.min.css" />
    <style>
        .btn {
            width: 50%;
            line-height: 40px;
        }

        .btn a {
            display: block;
            width: 100%;
            height: 100%;
            text-decoration: none;
            background-color: rgb(74, 222, 128);
            text-align: center;
            padding-top: 15px;
            padding-bottom: 15px;
            color: #FFFFFF;
            font-size: 30px;
            font-weight: bold;
            font-style: italic;
            border-radius: 6px;
        }

        .btn a:hover {
            background-color: rgb(22, 163, 74);
            color: #FDE68A;
            margin-left: 5px;
            margin-top: 5px;
            box-shadow: none;
        }
    </style>
    <title>Document</title>
</head>

<body>
    <div class='btn'>
        <a href=''>クリック</a>
    </div>
</body>

</html>

Tailwind CSS

<!DOCTYPE html>

<html lang="ja">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script src="https://cdn.tailwindcss.com"></script>
</head>

<body>
    <div class='w-1/2 leading-10 group'>
        <a href=''
            class="block w-full h-full no-underline text-center [padding-top:15px] [padding-bottom:15px] bg-green-400 text-white text-3xl font-bold italic [border-radius:6px;] group-hover:bg-green-600 group-hover:text-yellow-200 group-hover:[margin-top:5px] group-hover:[margin-left:5px]">クリック</a>
    </div>
</body>

</html>

みてわかる通り、明らかにコードの量が違います。
書く量も少なくなるので作業スピードも上がると思いました。

まとめ

今回はじめてTailwind CSSを使ってみましたが、CSSを書いた時とTailwind CSSで書いた時とスピードはほぼ同じでした。
慣れているCSSと初めて使ったTailwind CSSが同じ速度なら、今後はTailwind CSSに慣れた方が断然作業スピードは上がると思います。

皆さんも是非Tailwind CSSを使ってみてはいかがでしょうか。


最新記事

アーカイブ

ハッシュタグ