記事系コンテンツあるあるデザインパターン

2018年は記事系コンテンツの開発が多かったので、よく使う/使ったデザインパターンとコードをまとめてみました。

※アイコンは[FontAwesome](https://fontawesome.com/)を使用した例で記載しています
※FontAwesomeのCDNを使いたい場合は[ここ](https://fontawesome.com/start)から

**前提**

```lang:CSS
// 簡易リセット
* {
    margin: 0;
    padding: 0;
    border: 0;
}
```

# 文字装飾

## 蛍光ペンのような下線
![661b4234-5ae9-26dd-bd9b-4b8a671fda60.png](https://qiita-image-store.s3.amazonaws.com/0/54478/1b66034c-79b6-053d-0fc9-b116e6925083.png)

```lang:HTML
<span class="Underline">蛍光ペンのような下線</span>
```

```lang:CSS
.Underline {
    background: linear-gradient(transparent 60%,yellow 0);
}
```


## チェックマーク
### 単体で使いたい場合
![378f6924-44ca-bc3d-4dad-1a5441cc8cad.png](https://qiita-image-store.s3.amazonaws.com/0/54478/6ce59f94-e5ed-a6fe-796c-eb3caae42038.png)

```lang:HTML
<p><i class="fas fa-check"></i>チェックマーク</p>
```

```lang:CSS
p .fa-check {
  margin-right: 1rem;
  color: deeppink;
}
```
### リストの場合
![9c55d459-7f12-f4e5-1d40-2fc2e15136f8.png](https://qiita-image-store.s3.amazonaws.com/0/54478/8a157128-8dfd-e2bb-991d-69896bae60fb.png)

```lang:HTML
<ul class="List-Check">
    <li><i class="fas fa-check"></i>チェックマーク</li>
    <li><i class="fas fa-check"></i>チェックマークチェックマークチェックマークチェックマークチェックマーク</li>
</ul>
```
```lang:CSS
.List-Check li {
  display: flex;
  margin-bottom: 1rem;
  line-height: 1.4;
  align-items: center;
}
.List-Check .fa-check {
  margin-right: 1rem;
  color: deeppink;
}
```

# 見出し

## 下線グラデーション
![4d1bcb34-47a6-58f8-0ce9-c4eaec990c08.png](https://qiita-image-store.s3.amazonaws.com/0/54478/847cfc31-4c7c-dd87-3f3c-421da02361b5.png)


```lang:HTML
<h2>下線グラデーションな見出し</h2>
```

```lang:CSS
h2:after {
    display: block;
    margin-top: 10px;
    width: 100%;
    height: 3px;
    background: linear-gradient(to right,deeppink 0,deeppink 20%,dodgerblue 80%,dodgerblue 100%);
    content: "";
}
```

## 左線グラデーション
![54e3a30f-1b5b-1b71-34b0-558f1f32400a.png](https://qiita-image-store.s3.amazonaws.com/0/54478/fe8e43be-6493-c47f-d930-ac59d7bf22a2.png)

```lang:HTML
<h3>左線グラデーションな見出し</h3>
```

```lang:CSS
h3 {
    display: flex;
    padding: 1rem 1.3rem;
    align-items: stretch;
}
h3:before {
    display: block;
    margin: -1rem 1rem -1rem -1.3rem;
    min-width: 3px;
    background: linear-gradient(to bottom,deeppink 0,deeppink 20%,dodgerblue 80%,dodgerblue 100%);
    content: "";
    align-self: stretch;
}
```



# 枠
## 引用
![53e3d3ce-031c-4353-3b7d-4c0e4a8fda18.png](https://qiita-image-store.s3.amazonaws.com/0/54478/71044e36-38cc-13a4-f14f-6c30278fe3ed.png)

```lang:html
<blockquote>
    <p>テキスト<br>
    テキスト</p>
</blockquote>
```

```lang:CSS
blockquote {
    position: relative;
    padding: 1rem 2rem 1rem 3.5rem;
    border-radius: 5px;
    background: gainsboro;
}
blockquote:before {
    position: absolute;
    top: 1rem;
    left: 1rem;
    color: darkgray;
    content: "”";
    font-size: 4rem;
    line-height: 1;
}
```
## 破線な枠
![45e95e65-e111-25c8-2602-bed479fc36b5.png](https://qiita-image-store.s3.amazonaws.com/0/54478/5b7abe65-7c84-4b7e-8a7e-0edbe131d371.png)


```lang:HTML
<div class="Frame-Dash">破線な枠</div>
```

```lang:CSS
.Frame-Dash {
    padding: 1rem;
    border: 1px dashed deeppink;
    border-radius: 5px;
    line-height: 1.6;
}
```

## 点線な枠
![20d652d0-a39a-ef19-4562-699b23e7e764.png](https://qiita-image-store.s3.amazonaws.com/0/54478/2728f9f3-fd1b-5782-392d-6fdacebe8ba7.png)

```lang:HTML
<div class="Frame-Dot">点線な枠</div>
```

```lang:CSS
.Frame-Dot {
    padding: 1rem;
    border: 1px dotted dodgerblue;
    border-radius: 5px;
    line-height: 1.6;
}
```

## 見出し付き枠①
![8f4ef237-0461-1fee-8788-9a74ab0dd0f7.png](https://qiita-image-store.s3.amazonaws.com/0/54478/743859c4-4e36-e6ea-85ad-cf6b8ce5df6b.png)

※ダミーテキスト参考：[すぐ使えるダミーテキスト](https://lipsum.sugutsukaeru.jp/)


```lang:HTML
<div class="Frame-Border1">
    <p class="Frame-Border1-Title">見出し付き枠①</p>
    <p class="Frame-Border1-Text">ねどこは楽長の失敗ゴーシュげに気持ちへなれぐったがってしばらくくしゃみをするようなたたら。またとても勝手だだというゴーシュましまし。くたくたましたんましはたいや楽長の下手汁の限りからも何とか愉快ましだて、おまえだけ泪が入っがっんたた。</p>
</div>
```

```lang:CSS
.Frame-Border1 {
    border: 3px solid hotpink;
    border-radius: 5px;
}
.Frame-Border1-Title {
    margin: 0;
    padding: .8rem 1rem;
    background: hotpink;
    color: white;
    font-weight: bold;
}
.Frame-Border1-Text {
    margin: 0;
    padding: 1rem;
}
```

## 見出し付き枠②
![0b8a0af6-4d36-a713-0c92-bc582e1475f3.png](https://qiita-image-store.s3.amazonaws.com/0/54478/5837423b-eef8-c2d5-c349-3a2be1bc4561.png)

```lang:HTML
<div class="Frame-Border2">
    <p class="Frame-Border2-Title">見出し付き枠②</p>
    <ul>
        <li><a href="">ダミーテキスト</a></li>
        <li><a href="">ダミーテキスト</a></li>
        <li><a href="">ダミーテキスト</a></li>
    </ul>
</div>
```

```lang:CSS
.Frame-Border2 {
    margin-top: 1.4rem;
    padding: 0 1rem;
    border: 3px solid royalblue;
    border-radius: 5px;
}
.Frame-Border2-Title {
    margin-top: -1.4rem;
    margin-bottom: 0;
    padding: .8rem 1.5rem;
    border-radius: 3rem;
    background: royalblue;
    color: white;
    font-weight: bold;
}
.Frame-Border2 ul {
    margin: 1rem 2.5rem;
}
.Frame-Border2 li {
    margin-bottom: .8rem;
}
```

# その他

## 目次

![b4eba3af-4da5-cc2d-092d-87340556daad.png](https://qiita-image-store.s3.amazonaws.com/0/54478/a82a6b54-9b5a-f7e7-0630-61590eb0926b.png)

動的なのでコードとDEMOはこちら
http://jsdo.it/m-nakamura/wFJkr

# おわり

ひとまず初期リリースでこのくらい入れてあると大体なんとかなって、運用でも使ってもらえました：）