リッチリンクを作る
2021-01-06

漫画のリンクとか貼るときに、良い感じにリンクが表示される機能がある。

こういうの。これはnoteのスマホ版から

リッチリンクとかブログカードとか言うらしい。これを当ブログでも使ってみたい。CSSを組めばそれっぽいのは作れそうだったので、作ってみた。

template.html

<div class="bcard-wrapper">
  <a href="ここにリンク先URL" rel="nofollow" target="_blank">
    <span class="bcard-main withogimg">
      <div class="bcard-title">
        ここにタイトル
      </div>
      <div class="bcard-description">
        ここに説明文
      </div>
      <div class="bcard-img" style="background-image: url(ここに画像URL)">
      </div>
    </span>
  </a>
</div>

タイトルとか説明文を入れたりするのは手動で行っている。ここは自動化ポイントなので、おいおい実装したい。chromeの拡張機能とかになってくるのかな。

style.css

.bcard-wrapper{
    display: block;
    max-width: 500px;
    margin: 20px 0px;
    border-radius: 5px;
    padding: 0px;
    border: 1px solid #e0e0e0;
}
.bcard-main{
    overflow: hidden;
    position: relative;
    display: block;
}
.withogimg{
    padding-right: 120px;
    
}
 .bcard-img {
width: 120px;
height: 100%; 
border-radius: 0 5px 5px 0;
position: absolute;
    top: 0;
    right: 0;
    background-size:cover;
    background-position:center center;
}
 .bcard-title{
    font-size: 17px;
    margin: 17px 15px 0 15px;
    line-height: 1.4;
    max-height: 47px;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    font-weight: bold;
}
 .bcard-description {
    line-height: 1.5;
    font-size: 12px;
    color:#857f7f;
    margin: 7px 15px 17px 15px;
    max-height: 72px;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}
.bcard-wrapper a{color:#424242;}
.bcard-wrapper a:hover,.bcard-url a:hover,.bcard-site a:hover{text-decoration:none;}

長い!! こういうときアコーディオンで折りたためる機能も欲しいな...。

という感じで、以下のようになった。

良いですね。