pypy.com/

Python、Unity、FX自動化などを勉強しています。あと、コーラと車も好きです。そこらへんについて、たまに記事を書きます。

はてなブログのサイドバーのプロフィールを高速化・カスタマイズ

こんにちは。

今回は、はてなブログのサイドバーのプロフィールを高速化・カスタマイズする方法について書いていきます。

カスタマイズする理由

はてなブログでは、デザインからサイドバーにプロフィールを以下のように表示することができます。

基本的には、これで困ることはないのですが、読者になるボタンの横のカウンタなどが少し重く、ページの表示速度が遅くなってしまう原因になります。

そこで、上の画像と同じようなプロフィールをhtmlとcssで書いて、高速化したいと思います。

僕は、デザイン自体は結構気に入っているので、そこはあまり変えないように進めます。

完成したものは、以下のようになります。

大体同じ感じになっていることがわかります。

プロフィールの作り方

プロフィール画像と紹介文

上で載せた画像を見ると、プロフィールは2列で作られていて、左の列より右の列が大きいことがわかります。

図で見ると、以下のような感じです。

これを、htmlとcssで作ると、以下のようになります。

<style>
.column-left{
  float: left;
  width: 20%;
  text-align: left;
}
.column-right{
  float: right;
  width: 78%;
  text-align: left;
}
.column-one{
  float: left;
  width: 100%;
  text-align: left;
}
.profile_img{
  border-radius: 10px;
}
</style>
<div class="column-one">
  <div class="column-left">  
      <img class="profile_img" src="https://storage.googleapis.com/blog_1354165/images/base/profile.webp" width=128 height=128 decoding="async" alt="才田大聖のプロフィール画像">
  </div>
  <div class="column-right">
    Python、Unity、FX自動化などを勉強しています。あと、コーラと車も好きです。
  </div>
</div>

少し説明すると、colomn-leftクラスとcolomn-rightクラスで、左の列と右の列を作っています。

今回だと、左の列が20%、右の列が78%に設定されています。

また、画像はできるだけ速くということで、webp形式でGCPストレージから配信しています。

あと、画像は角丸になっていたので、角丸に設定しています。

この状態だと、以下のようになります。

大体はできていますが、読者になるボタンがほしいので、読者になるボタンを作ります。


読者になるボタン

読者になるボタンは、以下のサイトを参考にして作りました。
はてなブログの読者登録ボタンの設置やカスタマイズ

これを、htmlとcssで作成すると、以下のようになります。

<style>
.subscribe-button {
  margin: 1em 0;
}
.subscribe-button a {
  display: inline-block;
  margin: 0 auto;
  width: 100%;
  max-width: 300px;
  line-height: 28px;
  text-decoration: none;
  text-align: center;
  color: black;
  background-color: whitesmoke; /* ここでボタンの色 */
  box-shadow: 0 4px gray; /* ここでボタンの影の部分の色 */
  border-radius: 4px;
  transition: all .3s;
}
.subscribe-button a:hover {
  transform: translateY(4px);
  box-shadow: 0 0 #999;
}
</style>

<div class="subscribe-button">
  <a href="https://blog.hatena.ne.jp/SaidaTaisei/saidataisei.hatenablog.com/subscribe">読者になる</a>
</div>

参考サイトとの違いは、色とか幅くらいで、他は同じです。

この部分だけで、作成すると、以下のようになります。

これで、読者になるボタンができました




最終形

あとは、上のものとくっつけて、以下のようなhtml・cssにします。

<style>
.column-left{
  float: left;
  width: 20%;
  text-align: left;
}
.column-right{
  float: right;
  width: 78%;
  text-align: left;
}
.column-one{
  float: left;
  width: 100%;
  text-align: left;
}
.profile_img{
  border-radius: 10px;
}
.subscribe-button {
  margin: 1em 0;
}
.subscribe-button a {
  display: inline-block;
  margin: 0 auto;
  width: 100%;
  max-width: 400px;
  line-height: 28px;
  text-decoration: none;
  text-align: center;
  color: black;
  background-color: whitesmoke; /* ここでボタンの色 */
  box-shadow: 0 4px gray; /* ここでボタンの影の部分の色 */
  border-radius: 4px;
  transition: all .3s;
}
.subscribe-button a:hover {
  transform: translateY(4px);
  box-shadow: 0 0 #999;
}
</style>
<div class="column-one">
  <div class="column-left">
    <img class="profile_img" src="https://storage.googleapis.com/blog_1354165/images/base/profile.webp" width=64 height=64>
  </div>
  <div class="column-right">
    Python、Unity、FX自動化などを勉強しています。あと、コーラと車も好きです。
  </div>
</div>
<div class="subscribe-button">
  <a href="https://blog.hatena.ne.jp/SaidaTaisei/saidataisei.hatenablog.com/subscribe">読者になる</a>
</div>

これで、冒頭にも貼った以下の画像のようなプロフィールができます

今回はこれで終わります。