簡單完成社群網站連結散開效果-圓形
近來很多網站會將社群連結固定在網頁上,讓使用者易於觸擊,但隨著社群越來越多,放上太多連結固定在頁面上總是不美觀,因此我們會用一個icon固定在網頁上,點擊以後展開社群的項目,就像一個社群的選單,可以隨時被點擊。
我們先來看看完成後的效果:
首先,我們先建立html:
(真正要完成社群連結的部分只有紅色字部分)
<body> <div class="demo-wrapper"> <div class="container"> <h1>簡單完成社群網站連結散開效果–圓形</h1> <p> Lorem ipsum dolor sit amet consectetur adipisicing elit. Odit, quidem obcaecati aspernatur sit minus aliquid accusantium fugiat atque nesciunt eum eos vitae aperiam incidunt dignissimos cupiditate praesentium voluptates voluptatibus error! </p> <p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Fuga ea sunt neque, qui est debitis omnis unde exercitationem velit magni saepe dolor reiciendis voluptate, delectus, ex fugiat aliquid inventore quas.</p> <p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Odit, nostrum dolores deleniti corrupti similique ab placeat natus. Sint at repellat, aperiam temporibus consequatur id eius quo nulla quisquam esse. Ab!</p> <div class="share-buttons cn-wrapper"> <ul> <li><a href="#"><span aria-hidden="true" class="icon-twitter"></span></a></li> <li><a href="#"><span aria-hidden="true" class="icon-facebook"></span></a></li> <li><a href="#"><span aria-hidden="true" class="icon-google-plus"></span></a></li> <li><a href="#"><span aria-hidden="true" class="icon-reddit"></span></a></li> </ul> <button class="trigger"><span aria-hidden="true" class="icon-share"></span></button> </div> </div> </div> </body>
Css:
@import url(https://fonts.googleapis.com/css?family=Source+Sans+Pro:200,300,400,700); @font-face { font-family: 'icomoon'; src:url('https://s.cdpn.io/9674/icomoon.eot'); src:url('https://s.cdpn.io/9674/icomoon.eot?#iefix') format('embedded-opentype'), url('https://s.cdpn.io/9674/icomoon.woff') format('woff'), url('https://s.cdpn.io/9674/icomoon.ttf') format('truetype'); font-weight: normal; font-style: normal; } .icon-share, .icon-twitter, .icon-facebook, .icon-google-plus, .icon-reddit, button { font-family: 'icomoon'; } .icon-share:before { content: "\e000"; } .icon-twitter{ background-color: #00ACEE; } .icon-twitter:before { content: "\e001"; } .icon-facebook{ background-color: #3C5A98; } .icon-facebook:before { content: "\e002"; } .icon-google-plus{ background-color: #B73223; } .icon-google-plus:before { content: "\e003"; } .icon-reddit{ background-color: #A5ADAF; } .icon-reddit:before { content: "\e004"; } * { -moz-box-sizing: border-box; box-sizing: border-box; margin: 0; padding: 0; list-style: none; border:0; } html, body { height: 100%; } body { border: 1px solid transparent; font: 300 1.3em "Source Sans Pro", sans-serif; padding: 5%; color: #555; } h1{ margin:10px auto 30px; color: deepPink; } p { margin-bottom: 10px } a{ color: deepPink; text-decoration: none; font-weight: bold; }
當基礎的html和css建立完後呈現以下畫面:
接著,讓社群連結項目成為想要的樣子:
Css:
button, li { border-radius: 50%; text-align: center; width: 3em; height: 3em; border: none } .icon-share, .icon-twitter, .icon-facebook, .icon-google-plus, .icon-reddit, button { speak: none; font-style: normal; font-weight: normal; font-variant: normal; text-transform: none; -webkit-font-smoothing: antialiased; color:white; display:block; font-size:1.5em; width:100%; height:100%; line-height:2em; border-radius:50%; }
呈現如下:
接著,讓全部的連結都重疊放在畫面的右下角,並將主要想被點擊的按鈕放在最上層。
Css:
button, li { position: fixed; bottom: 0; right: 0; } button { background-color:violet; z-index: 5; cursor: pointer; font-size:1em; }
顯示如下:
然後用css設定點擊之後想呈現的位置:
Css:
li.slideout:nth-child(1) { -webkit-transform: translateY(-10em); transform: translateY(-10em) } li.slideout:nth-child(2) { -webkit-transform: translateY(-8.6602540378em) translateX(-5em); transform: translateY(-8.6602540378em) translateX(-5em) } li.slideout:nth-child(3) { -webkit-transform: translateY(-5em) translateX(-8.6602540378em); transform: translateY(-5em) translateX(-8.6602540378em) } li.slideout:nth-child(4) { -webkit-transform: translateX(-10em); transform: translateX(-10em) }
並加上Jquery,按鈕被點擊時在每一個社群連結子項目加上一個class,讓子項到各自要去的位置。
Jquery:
$('.trigger').on('click', function(){ $('.cn-wrapper li').toggleClass('slideout'); });
效果如下:
最後加上過渡時間就完成了。
為了展示,我們把過渡時間延長一些來看結果。
以上就是我們這次對於flexbox 的介紹,如果有其他想暸解認識的電商、網站相關主題,都歡迎留言讓我們知道,或者需要相關服務,歐斯瑞團隊將非常樂意替您解決!
我要留言