1. >
  2. Blog
  3. >
  4. CSSプリプロセッサーを追加する
2023年1月7日2023年10月14日
CSSプリプロセッサーを追加する

CSSプリプロセッサーを追加する

VueアプリでCSSプリプロセッサとしてLessを使ってCSSを記述する。


CSSプリプロセッサーを追加する

Lorem ipsum dolor sit amet, consectetur adipiscing elit.

イントロダクション

Lorem

CSSプリプロセッサとしてLessを追加する

Lorem ipsum dolor sit amet, consectetur adipiscing elit.Lorem ipsum dolor sit amet, consectetur adipiscing elit.

  1. Lorem ipsum dolor sit amet, consectetur adipiscing elit.
$ npm i - D less
  1. Lorem ipsum dolor sit amet, consectetur adipiscing elit.Lorem ipsum dolor sit amet, consectetur adipiscing elit.
App.vueless
<style lang="less">
@text-color: red;

.text-red {
  color: @text-color;
}
</style>

<template>
  <p class="text-red">I am a red text</p>です。
</template>

Lorem ipsum dolor sit amet, consectetur adipiscing elit.
  1. Lorem ipsum dolor sit amet, consectetur adipiscing elit.Lorem ipsum dolor sit amet, consectetur adipiscing elit.
App.vuevue
<style lang="less">
@text-color: red;

.text-blue {
  color: @text-color;

  &:hover {
    @apply
      text-blue-500;
  }
}
</style>

<template>
  <p class="text-blue">I become blue on hover</p>
</template>

Lorem ipsum dolor sit amet, consectetur adipiscing elit.Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Lorem ipsum dolor sit amet, consectetur adipiscing elit.Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Lessでグローバルスタイルを書く

Lorem ipsum dolor sit amet, consectetur adipiscing elit.Lorem ipsum dolor sit amet, consectetur adipiscing elit.

  1. Lorem ipsum dolor sit amet, consectetur adipiscing elit.Lorem ipsum dolor sit amet, consectetur adipiscing elit.
styles
    └── less
          └── main.less

Lorem ipsum dolor sit amet, consectetur adipiscing elit.
  styles
        ├── index.js
        ├── less
        │   └── main.less
        └── css
            ├── main.css
            └── font-face
                └── main.css
  1. Lorem ipsum dolor sit amet, consectetur adipiscing elit.Lorem ipsum dolor sit amet, consectetur adipiscing elit.
css
html,
body {
font-family: 'Open Sans', sans-serif;
}

Lorem ipsum dolor sit amet, consectetur adipiscing elit.Lorem ipsum dolor sit amet, consectetur adipiscing elit.

  1. Lorem ipsum dolor sit amet, consectetur adipiscing elit.
css
.space-between-link {
   a {
      @apply text-red-500;

        &:hover {
          @apply text-blue-500;
      }
    }
}
  1. Lorem ipsum dolor sit amet, consectetur adipiscing elit.
styles/less/main.lessless

.button {
    @apply
     rounded
     font-bold
     bg-gray-900
     text-white
     py-2
     px-4
     focus:outline-none
     focus:shadow-outline
     hover:bg-violet-600;
}
  1. Lorem ipsum dolor sit amet, consectetur adipiscing elit.
styles/index.jsjs
import './less/main.less'
  1. Lorem ipsum dolor sit amet, consectetur adipiscing elit.
html
<button class="button">I am a button</button>

<div class="container space-between-link mx-auto space-y-3 text-center">
      <p>I am a paragraph with a <a href="#">link</a>.</p>
      <p>I am another paragraph with a <a href="#">link</a>.</p>
      <p>I am another paragraph with a <a href="#">link</a>.</p>
</div>

Lorem ipsum dolor sit amet, consectetur adipiscing elit.Lorem ipsum dolor sit amet, consectetur adipiscing elit.Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Lorem ipsum dolor sit amet, consectetur adipiscing elit.Lorem ipsum dolor sit amet, consectetur adipiscing elit.Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Lorem ipsum dolor sit amet, consectetur adipiscing elit.Lorem ipsum dolor sit amet, consectetur adipiscing elit.

まとめ

Lorem ipsum dolor sit amet, consectetur adipiscing elit.Lorem ipsum dolor sit amet, consectetur adipiscing elit.Lorem ipsum dolor sit amet, consectetur adipiscing elit.Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Lorem ipsum dolor sit amet, consectetur adipiscing elit.Lorem ipsum dolor sit amet, consectetur adipiscing elit.Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Lorem ipsum dolor sit amet, consectetur adipiscing elit.Lorem ipsum dolor sit amet, consectetur adipiscing elit.