[パーツ]ソーシャルリンク 左固定でホバーでパタンとテキストが表示される

CSS HTML
Update 2018.02.28

左固定でホバーでパタンとテキストが表示される

画面の左固定でホバーでパタンとテキストが表示されます。

browser:  65 11 20 10 
ニャン易度 
<div class="contents">text</div>
<ul class="cp_snslink01">
<li class="cp_link facebook"><a href="#"><i class="fa fa-facebook fa-2x fa-fw"></i>
<div class="nav-label"><span>facebook Button</span></div></a>
</li>
<li class="cp_link twitter"><a href="#"><i class="fa fa-twitter fa-2x fa-fw"></i>
<div class="nav-label"><span>twitter Button</span></div></a>
</li>
<li class="cp_link google"><a href="#"><i class="fa fa-google-plus fa-2x fa-fw"></i>
<div class="nav-label"><span>google+ Button</span></div></a>
</li>
<li class="cp_link instagram"><a href="#"><i class="fa fa-instagram fa-2x fa-fw"></i>
<div class="nav-label"><span>instagram Button</span></div></a>
</li>
</ul>
* {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}
body {
	/*設置する親要素ページ全体ならbodyなど*/
	position: relative;
	height: 100vh;
	margin: 0;
	padding: 0;
}
.contents {
	/*サンプルはfixedの確認のためにheight指定しています。*/
	height: 2000px;
}
.cp_snslink01 {
	position: fixed;
	top: 50%;
	left: 0;
	margin: 0;
	padding: 0;
	list-style-type: none;
	-webkit-transform: translateY(-50%);
	        transform: translateY(-50%);
}
.cp_snslink01 .cp_link {
	position: relative;
}
.cp_snslink01 .cp_link {
	display: block;
	width: 60px;
	height: 60px;
	padding: 15px 10px;
	cursor: pointer;
}
.cp_snslink01 .cp_link .nav-label {
	line-height: 64px;
	position: absolute;
	z-index: 4;
	top: 0rem;
	display: block;
	height: 60px;
	margin-left: 50px;
	padding: 0 20px;
	white-space: nowrap;
}
.cp_snslink01 .cp_link,
.cp_snslink01 .cp_link a,
.cp_snslink01 .cp_link:hover,
.cp_snslink01 .cp_link .nav-label {
	color: #ffffff;
}
/*facebook*/
.cp_snslink01 .facebook,
.cp_snslink01 .facebook:hover,
.cp_snslink01 .facebook:hover .nav-label {
	background: #3b5998;
}
.cp_snslink01 .facebook .nav-label {
	background: #1e2e4f;
}
/*twitter*/
.cp_snslink01 .twitter,
.cp_snslink01 .twitter:hover,
.cp_snslink01 .twitter:hover .nav-label {
	background: #55acee;
}
.cp_snslink01 .twitter .nav-label {
	background: #0065d9;
}
/*google+*/
.cp_snslink01 .google,
.cp_snslink01 .google:hover,
.cp_snslink01 .google:hover .nav-label {
	background: #dd4b39;
}
.cp_snslink01 .google .nav-label {
	background: #af0606;
}
/*instagram*/
.cp_snslink01 .instagram,
.cp_snslink01 .instagram:hover,
.cp_snslink01 .instagram:hover .nav-label {
	background: radial-gradient(circle at 0% 90%, #fdf498 0%, #fd5948 5%, #d6249d 45%,#285aea 60%,#285aea 90%);
}
/* effect */
.cp_snslink01 .cp_link.nav-label, .cp_snslink01 .cp_link.cp_link:hover .nav-label {
	-webkit-transition: -webkit-transform 0.4s ease, background 0.4s ease;
	        transition:         transform 0.4s ease, background 0.4s ease 0.1s;
	-webkit-transition-delay: 0s, 0.1s;
}
.cp_snslink01 .cp_link.cp_link .nav-label {
	-webkit-transition: -webkit-transform 0.4s ease;
	        transition:         transform 0.4s ease;
	-webkit-transform: rotateY(-90deg);
	        transform: rotateY(-90deg);
	-webkit-transform-origin: left 50%;
	        transform-origin: left 50%;
}
.cp_snslink01 .cp_link.cp_link:hover .nav-label {
	-webkit-transform: rotateY(0);
	        transform: rotateY(0);
}

copypet.jp

CSS3などで新たに追加された要素・装飾方法など、日々コードを書いていないと忘れてしまったり、ささっとプロトタイプを作る時などちょっとしたことに時間をかけている暇はない。そんな時に「あ〜、あれストックしときゃよかったなぁ」って困った自分用のストックブログです。カスタマイズなどがしやすいよう、昨今のweb制作に取り入れられる一般的なコードを中心に掲載しています。

More Info

こんな記事はいかがですか?