CSS怎么實現(xiàn)選項卡切換效果-創(chuàng)新互聯(lián)

這篇文章主要介紹CSS怎么實現(xiàn)選項卡切換效果,文中介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們一定要看完!

在華池等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強(qiáng)發(fā)展的系統(tǒng)性、市場前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供做網(wǎng)站、成都網(wǎng)站制作 網(wǎng)站設(shè)計制作定制網(wǎng)站建設(shè),公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),成都品牌網(wǎng)站建設(shè),成都營銷網(wǎng)站建設(shè),成都外貿(mào)網(wǎng)站建設(shè),華池網(wǎng)站建設(shè)費用合理。

利用錨點的思想可以實現(xiàn)一個簡單的選項卡切換效果。

頁面布局及樣式:

<div class="box">
  <div class="list" id="one">1</div>
  <div class="list" id="two">2</div>
  <div class="list" id="three">3</div>
  <div class="list" id="four">4</div>
</div>
<div class="link">
  <a href="#one">1</a>
  <a href="#two">2</a>
  <a href="#three">3</a>
  <a href="#four">4</a>
</div> 

......

.box {
   height: 10em;
   border: 1px solid #ddd;
   overflow: hidden;
}
.list {
   line-height: 10em;
   background: #ddd;
}

容器設(shè)置了 overflow:hidden,且每個列表高度和容器的高度一樣高,這樣保證永遠(yuǎn) 只顯示一個列表。當(dāng)我們點擊按鈕,如第三個按鈕,會改變 URL 地址的錨鏈為#three,從 而觸發(fā) id 為 three 的第三個列表發(fā)生的錨點定位,也就是改變?nèi)萜鳚L動高度讓列表 3 的上 邊緣和滾動容器上邊緣對齊,從而實現(xiàn)選項卡效果。

CSS怎么實現(xiàn)選項卡切換效果

但是這種方式有一定的不足之處:

  • 其一,容器高度需要固定;

  • 其二,錨點定位會觸發(fā)窗體的重定位,也就是如果頁面可以滾動,那么點擊選項頁面也會發(fā)生跳動

為了改變這種情況,下面利用下面的方式。頁面布局為:

<div class="box">
    <div class="list"><input id="one">1</div>
    <div class="list"><input id="two">2</div>
    <div class="list"><input id="three">3</div>
    <div class="list"><input id="four">4</div>
</div>
<div class="link">
    <label class="click" for="one">1</label>
    <label class="click" for="two">2</label>
    <label class="click" for="three">3</label>
    <label class="click" for="four">4</label>
</div>

這樣寫就算頁面窗體就有滾動條,絕大多數(shù)情況下,也都不會發(fā)生跳動現(xiàn)象。其原理就是在每個列表里塞入一個肉眼看不見的<input>輸入框,然后選項卡按鈕變成<label>元素,并通過for屬性與<input>輸入框的id相關(guān)聯(lián),這樣,點擊選項按鈕會觸發(fā)輸入框的 focus 行為,觸發(fā)錨點定位,實現(xiàn)選項卡切換效果。

但是上面這種技術(shù)要想用在實際項目中還離不開JavaScript 的支持,一個是選項卡按鈕的選中效果,另一個就是處理列表部分區(qū)域在瀏覽器外面時依然會跳動的問題。
相關(guān)處理類似下面的做法,使用 jQuery 語法:

$('label.click').removeAttr('for').on('click', function() { $('.box').scrollTop(xxx); 'xxx'表示滾動數(shù)值
});

以上是CSS怎么實現(xiàn)選項卡切換效果的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)網(wǎng)站制作公司行業(yè)資訊頻道!

網(wǎng)頁題目:CSS怎么實現(xiàn)選項卡切換效果-創(chuàng)新互聯(lián)
網(wǎng)站地址:http://muchs.cn/article20/dhooco.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供域名注冊、軟件開發(fā)、企業(yè)建站網(wǎng)頁設(shè)計公司、網(wǎng)站設(shè)計、營銷型網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

商城網(wǎng)站建設(shè)