営業ナシでWeb制作案件が舞い込んでくる”新世代”戦略 ▶︎

【知らないと損する】滑らかなCSS画像アニメーション『object-fit:cover×overflow: hidden』

今回はCSSだけで作るobject-fit:coverとoverflow: hidden滑らかな画像アニメーションをご紹介。簡単です。滑らかに動きます。画像一覧画面を作る際に役立ちます。
htmlとcssだけしか使っていません。
コードの説明や実際の動きも詳しくまとめてみたので自由にお使いください。

こちらのアニメーション/エフェクトのコードはすべて完全オリジナルなのでコピペ大歓迎です。

この記事の目次

【CSSだけ】object-fit:coverとoverflow: hidden滑らかな画像アニメーション

  1. アニメーション動作の確認
  2. コードの確認
  3. このアニメーションのポイント!


1.  画像背景に【filter+linear gradient】で美しいCSSエフェクト

まずはアニメーションの動作から確認していきましょう

アニメーション動作の確認

動きは下の画像のような感じになります

実際の動きはこちら

 

コードの確認

<div class="images">
<!-- 画像と文字を6コ置く -->
   <div class="image">
     <img src="https://source.unsplash.com/1000x800">
     <span>What Is It?</span>
   </div>
   <div class="image">
     <img src="https://source.unsplash.com/1000x801">
     <span>What Is It?</span>
   </div>
   <div class="image">
     <img src="https://source.unsplash.com/1000x802">
     <span>What Is It?</span>
   </div>
   <div class="image">
     <img src="https://source.unsplash.com/1000x803">
     <span>What Is It?</span>
   </div>
   <div class="image">
     <img src="https://source.unsplash.com/1000x804">
     <span>What Is It?</span>
   </div>
   <div class="image">
     <img src="https://source.unsplash.com/1000x805">
     <span>What Is It?</span>
   </div>
 </div>
.images {
  /* 親要素の配置・サイズを指定 */
  display: flex;
  width: 100%;
  padding: 4% 2%;
  box-sizing: border-box;
  height: 300px;
}
.image {
  flex: 1;
  /* 枠からはみ出る要素を隠す指定 */
  overflow: hidden;
  /* アニメーション速度の指定 */
  transition: .5s;
  margin: 0 2%;
  /* 立体感を出すために影をつける */
  box-shadow: 0 10px 10px rgba(0,0,0,.1);
  line-height: 0;
}
.image img {
  width: 70%;
  /* 画像背景の位置調整 */
  height: calc(100% - 100vh);
  /* 伸縮せずに滑らかに画像が表示される */
  object-fit: cover;
  /* hoverした際のアニメーション速度 */
  transition: .8s;
}
.image span {
  /* 文字の背景色 */
  background : #f1f1f1;
  font-weight: bold;
  color: #88888;
  font-size: 10px;
  display: block;
  text-align: center;
  /* 文字背景の高さ */
  height: 30px;
  line-height: 3.2;
}
.image:hover > img {
  width: 100%;
  height: 100%;
}
ここがポイント!
  1. 画像を6個用意する
  2. overflow: hiddenで枠に収まらないサイズの要素は隠す
  3. object-fit: coverで画像が伸縮せずに滑らかに表示されるように指定
  4. box-shadowで奥行きをつける
  5. transitionで滑らかなアニメーションを実現



まとめ

HTMLとCSSを使うと今回紹介したようなことも簡単にできてしまうんです。

 

『CSSアニメーションやエフェクトだけではなくWebサイトをゼロから作って稼いでいきたい』

『3ヶ月くらいで最低でも月10万円は稼ぎたい』

『営業とかやったことないけどWeb制作だけで稼いでいきたい』

 

こんな方のためにWeb制作で月80万超稼ぐ筆者が自身の経験を踏まえて【失敗しない】Webデザイナー(Web制作)独学ロードマップを執筆しました。

 

少額の投資で3ヶ月後には月10〜30万稼げるよう設計してあります。
(学習教材やAdobeなど最低限のコストはかかります)

 

ロードマップの構成
  1. Web制作に特化した『確実に身に付く』学習方法
  2. Web制作会社が喰いつく理想的なポートフォリオの作成手順
  3. 返信率10%以上!Web制作会社へのメール営業

 

有料公開も考えましたが「Webデザイナー(Web制作)はまだまだ稼げることを証明したい!」という思いが強く、期間限定で無料公開をすることにしました。

 

2021年半ばまでは無料公開する予定ではありますが前倒しすることもあり得ますのでご興味ある方はお早めにどうぞ!