整合營銷服務(wù)商

          電腦端+手機端+微信端=數(shù)據(jù)同步管理

          免費咨詢熱線:

          使用CSS隱藏頁面元素的幾種方法,你知道它們的具體區(qū)別嗎?


          一說起隱藏HTML頁面上的元素,很多人第一反應(yīng)就是設(shè)置元素的css屬性display:none;值,這是一種最常見的隱藏頁面元素方法。本篇文章我們就一起看看使用CSS隱藏頁面元素的方法,以及它們的區(qū)別。

          本篇文章中的例子直接放到github地址中,感興趣的同學(xué)可以自取。

          https://github.com/zhouxiongking/article-pages/blob/master/articles/hideElement/hideElement.html

          CSS

          方法1-display:none

          正如上文說的一樣,最簡單也最粗暴的方法就是設(shè)置元素的display屬性為none;

          display:none;

          設(shè)置為display:none;的元素將不會再占用頁面空間,其占用的空間會被其他元素所占有,從而會引起瀏覽器的重排和重匯。

          方法2-visibility: hidden

          另外一種方法是設(shè)置元素的visibility屬性為hidden。

          visibility: hidden

          這種做法雖然能夠隱藏元素,但是該元素仍會占用頁面空間,因此只會導(dǎo)致瀏覽器的重匯而不會引起重排。

          如果希望元素隱藏后不會引起頁面布局的變化,則推薦使用visibility:hidden;方式。

          方法3-opacity:0

          設(shè)置元素透明度opacity屬性為0,也可以隱藏頁面元素。

          opacity:0

          在呈現(xiàn)上與visibility:hidden;方式一樣,同樣會占據(jù)頁面空間。

          差異性-頁面布局

          對頁面布局的影響主要是看是否會引起瀏覽器的重匯和重排,對應(yīng)的差異如下圖所示。

          頁面布局差異

          差異性-事件綁定

          • display:none;的元素會直接從頁面上消失,因此在該元素上綁定的事件不會生效。

          • visibility: hidden;的元素不會觸發(fā)綁定的事件。

          • opacity:0; 的元素會觸發(fā)綁定的事件,例如點擊會觸發(fā)click函數(shù)。

          我們可以通過以下的例子來看看。

          首先我們定義兩個div,分別設(shè)置為visibility: hidden;和opacity:0,在兩個div上分別綁定一個click事件。

          定義div元素

          綁定的事件

          當我們在兩個元素都進行點擊時,可以在控制臺看到如下輸出結(jié)果。

          結(jié)果

          從上述結(jié)果可以看出和上述結(jié)論一致。

          差異性-動畫屬性

          • display:none;的元素會直接從頁面消失,因此定義transition效果完全無效。

          • visibility:hidden;的元素會在transition設(shè)置的時間內(nèi)消失,但是沒有動畫效果。

          • opacity:0;的元素可以和正常元素一樣,從頁面以動畫效果消失。

          同樣我們可以通過以下這個例子來看看。

          首先,我們定義兩個div,并設(shè)置其transition屬性。

          div元素

          定義transition效果

          我們通過將鼠標移至元素上,可以看到兩者的差異,從而驗證了上述結(jié)論的正確性。

          結(jié)束語

          本篇文章主要講解了使用CSS隱藏元素的幾種常用方法,并講解了它們之間的區(qū)別,以便大家在特定的場景中進行選擇。


          一說起隱藏HTML頁面上的元素,很多人第一反應(yīng)就是設(shè)置元素的css屬性display:none;值,這是一種最常見的隱藏頁面元素方法。本篇文章我們就一起看看使用CSS隱藏頁面元素的方法,以及它們的區(qū)別。

          本篇文章中的例子直接放到github地址中,感興趣的同學(xué)可以自取。

          https://github.com/zhouxiongking/article-pages/blob/master/articles/hideElement/hideElement.html

          CSS

          方法1-display:none

          正如上文說的一樣,最簡單也最粗暴的方法就是設(shè)置元素的display屬性為none;

          display:none;

          設(shè)置為display:none;的元素將不會再占用頁面空間,其占用的空間會被其他元素所占有,從而會引起瀏覽器的重排和重匯。

          方法2-visibility: hidden

          另外一種方法是設(shè)置元素的visibility屬性為hidden。

          visibility: hidden

          這種做法雖然能夠隱藏元素,但是該元素仍會占用頁面空間,因此只會導(dǎo)致瀏覽器的重匯而不會引起重排。

          如果希望元素隱藏后不會引起頁面布局的變化,則推薦使用visibility:hidden;方式。

          方法3-opacity:0

          設(shè)置元素透明度opacity屬性為0,也可以隱藏頁面元素。

          opacity:0

          在呈現(xiàn)上與visibility:hidden;方式一樣,同樣會占據(jù)頁面空間。

          差異性-頁面布局

          對頁面布局的影響主要是看是否會引起瀏覽器的重匯和重排,對應(yīng)的差異如下圖所示。

          頁面布局差異

          差異性-事件綁定

          • display:none;的元素會直接從頁面上消失,因此在該元素上綁定的事件不會生效。

          • visibility: hidden;的元素不會觸發(fā)綁定的事件。

          • opacity:0; 的元素會觸發(fā)綁定的事件,例如點擊會觸發(fā)click函數(shù)。

          我們可以通過以下的例子來看看。

          首先我們定義兩個div,分別設(shè)置為visibility: hidden;和opacity:0,在兩個div上分別綁定一個click事件。

          定義div元素

          綁定的事件

          當我們在兩個元素都進行點擊時,可以在控制臺看到如下輸出結(jié)果。

          結(jié)果

          從上述結(jié)果可以看出和上述結(jié)論一致。

          差異性-動畫屬性

          • display:none;的元素會直接從頁面消失,因此定義transition效果完全無效。

          • visibility:hidden;的元素會在transition設(shè)置的時間內(nèi)消失,但是沒有動畫效果。

          • opacity:0;的元素可以和正常元素一樣,從頁面以動畫效果消失。

          同樣我們可以通過以下這個例子來看看。

          首先,我們定義兩個div,并設(shè)置其transition屬性。

          div元素

          定義transition效果

          我們通過將鼠標移至元素上,可以看到兩者的差異,從而驗證了上述結(jié)論的正確性。

          結(jié)束語

          本篇文章主要講解了使用CSS隱藏元素的幾種常用方法,并講解了它們之間的區(qū)別,以便大家在特定的場景中進行選擇。

          頁編程之圖片、隱藏。

          同學(xué)們好,這里是免費少兒編程知識分享,每天一行代碼誰都能學(xué)會。今天分享的知識是為網(wǎng)頁添加圖片控件和隱藏控件,用到的是input標簽的type屬性值,image和hidden。這兩個控件太過于簡單,所以我就放在一起講了,同時介紹了image控件button的image內(nèi)容,以及IMG控件之間的區(qū)別。演示了hidden控件在實際編程中的作用。

          先來看看今天實例的運行效果。網(wǎng)頁上分為兩段。

          ·第一段中有三張圖片,第一張就是type屬性等于image的效果,第二張是button中包含IMG標簽的效果,第三張是純IMG標簽的效果。這三張圖片的共同點是圖片完全一致。不同點是type=image,直接將整張圖片做成了提交按鈕,點擊之后即可提交整張表單,但外觀表現(xiàn)時仍然和普通的圖片是沒有任何差別的。

          ·第二張是button按鈕中使用了IMG標簽,雖然它也有提交和圖片,但是它最外面仍然保留了按鈕的外邊框,看上去是以按鈕為主。

          ·第三章中直接使用IMG標簽,它沒有提交功能就是一普通的圖片,但是我們?nèi)匀豢梢酝ㄟ^JS的submit函數(shù)來使其提交表單。

          ·第二段是一個密碼框一個提交按鈕。這一句話只是為了方便你們找到隱藏空間的位置,我還做了兩個hidden的隱藏控件,但是你們看不到,我隨便在這里輸入密碼,然后點擊按鈕時,JS就會取出(密碼)控件的值和隱藏控件中的值并且彈出對話框提示。

          這里有兩點需要注意,可以看到密碼控件中的值在這里仍然是明文顯示的,證明它只是視覺上是*或者圓點,實際在數(shù)據(jù)傳輸中仍然是明文并沒有加密。

          ·第二點是隱藏控件中的值被成功讀取,看不到并不代表不存在,效果各位同學(xué)都已經(jīng)看到了。

          在我們來看看實現(xiàn)的代碼,先講image值,它的關(guān)鍵屬性就是src和ID,也就是引用地址和命名,沒有什么好講的。我其實是不建議你們使用這個控件的,因為一般表單提交前,都會加上一層一層的驗證,比如說是必填、b7手勢、數(shù)字、格式是否正確。這個時候除了最基礎(chǔ)的控件類型驗證外還會用到 gs驗證。而如果使用 gs驗證就需要用到自定義函數(shù),在提交到服務(wù)器前就驗證好。

          如果用戶數(shù)據(jù)是正確的就提交,如果不正確就終止提交操作提示用戶修改流程,這樣看上去沒有問題,但因image控件討厭也就討厭在這里。

          ·若用這種方式提交可能會發(fā)生表單提交兩次的現(xiàn)象,經(jīng)常會造成表單元素被重復(fù)提交,數(shù)據(jù)庫被寫入異常,所以盡量不用或者少用。

          ·至于hidden控件常用來保存一些不需要或者不希望展示給用戶的數(shù)據(jù),他的常用屬性就是無這個Value和這個id。

          我舉個例子幫助你們理解,現(xiàn)在客戶要求建立一個注冊新用戶的界面,但是要求將注冊步驟分為兩步。第一步,需要用戶填寫手機和昵稱,然后跳轉(zhuǎn)至第二頁,輸入密碼和其他的信息,第二頁肯定就不需要顯示出來用戶在第一頁的時候輸入的數(shù)據(jù)了。但這些數(shù)據(jù)又必須在第二頁的時候一起提交至服務(wù)器。

          這時候就可以使用到隱藏控件--接收第一頁提交過來的數(shù)據(jù)并且不顯示,用戶也感受不到。直接填好信息提交時第一頁的數(shù)據(jù)也以隱藏空間的方式一起提交了。這僅僅是hidde空間的一個使用場景,還可以收集用戶信息、確定用戶身份、判斷提交源,在多個form表單中建立關(guān)節(jié)聯(lián)、做全局變量等,總的來說應(yīng)用方式還是很廣的。

          在目前這個階段就只需要知道這兩控件能干什么和基礎(chǔ)寫法,計算完成后面到具體的使用場景時會再詳細講解。

          好了,今天的分享就到這里,希望各位同學(xué)下去能夠照著寫三遍,做到不看視頻也能夠?qū)懗鰜恚械陌咐跋嚓P(guān)文檔均可以向我獲取。下期見。網(wǎng)頁編程·服務(wù)端編程·數(shù)據(jù)庫·算法,點贊點關(guān)注吧!


          主站蜘蛛池模板: 春暖花开亚洲性无区一区二区 | 久久亚洲色一区二区三区| 国产伦精品一区二区三区免费下载| 国产激情精品一区二区三区| 国产伦精品一区二区三区免费迷 | 精品无码一区二区三区爱欲九九 | 精品国产AV一区二区三区| 精品久久久久久无码中文字幕一区| 亚洲综合色一区二区三区| 人妻少妇一区二区三区| 亚洲一区二区免费视频| 中文乱码精品一区二区三区| 国产一区中文字幕| 最新中文字幕一区| 亚洲日韩精品国产一区二区三区 | 午夜影院一区二区| 国产美女视频一区| 欧美日韩综合一区二区三区| 一区二区三区福利视频免费观看| 日本一区二三区好的精华液| 精品深夜AV无码一区二区| 国精产品一区一区三区免费视频| 日本免费一区二区在线观看| 一区二区视频在线免费观看| 视频一区二区在线观看| 另类ts人妖一区二区三区| 日韩在线视频不卡一区二区三区| 色一情一乱一伦一区二区三欧美 | 亚欧成人中文字幕一区| 自拍日韩亚洲一区在线| 亚洲国产精品自在线一区二区| 免费无码AV一区二区| 一区二区三区日本电影| 少妇人妻精品一区二区三区| 精品熟人妻一区二区三区四区不卡| 亚洲AV无码一区二区乱子仑 | 国产日韩高清一区二区三区 | 日韩欧国产精品一区综合无码| 日韩av片无码一区二区三区不卡 | 国产精品亚洲一区二区三区 | 色一乱一伦一图一区二区精品 |