
- 類型:濾鏡插件大。7.6M語(yǔ)言:中文 評(píng)分:6.6
- 標(biāo)簽:
表單元素(控件)不可見(jiàn),你用visibility還是display?
屬性大比拼:visibility和display的介紹
今天在做一個(gè)表單時(shí)涉及到這方面,當(dāng)選中相應(yīng)的選項(xiàng)后設(shè)置相應(yīng)的幾個(gè)元素(控件可見(jiàn)或不可見(jiàn)),后來(lái)還是用了visibility來(lái)實(shí)現(xiàn)。我們先來(lái)看下visibility對(duì)應(yīng)的幾個(gè)屬性的介紹:
1 visibility:visible
2 /*元素可見(jiàn),默認(rèn)值*/
3 visibility:hidden
4 /*元素不可見(jiàn),但仍然為其保留相應(yīng)的空間*/
5 visibility:collapse
6 /*只對(duì)table對(duì)象起作用,能移除行或列但不會(huì)影響表格的布局。如果這個(gè)值用
7
8 在table以外的對(duì)象上則表現(xiàn)為hidden。*/
9 visibility:inherit
10 /*繼承上級(jí)元素的visibility值。*/
1 再來(lái)看一下display對(duì)應(yīng)的幾個(gè)屬性的介紹:
2
3 display:none
4 /*元素不可見(jiàn),并且不為其保留相應(yīng)的位置*/
5 display:block
6 /*表現(xiàn)為一個(gè)塊級(jí)元素(一般情況下獨(dú)占一行)*/
7 display:inline
8 /*表現(xiàn)為一個(gè)行級(jí)元素(一般情況下不獨(dú)占一行)*/
不好意思,我要華麗麗地加上一條鏈接,讓復(fù)制粘貼不注明文章出處的人幫我做個(gè)外鏈,抱歉。http://www.chunye39.com 純野原創(chuàng)博客
visibility和display中不可見(jiàn)的區(qū)別
估計(jì)看到這里,你也就大概知道了兩者的區(qū)別了吧。哈哈。雖然Visibility和Display屬性都可以隱藏一個(gè)元素,但它們之間的不同點(diǎn)在于visibility:hidden在隱藏一個(gè)元素的同時(shí)仍然在頁(yè)面上為該元素保留所需的空間,而display:none則表現(xiàn)得像把元素從頁(yè)面里刪除了,在頁(yè)面上看不出該元素還存在著。
如何運(yùn)用?
區(qū)別知道了,但如何運(yùn)用起來(lái)呢。在頁(yè)面開(kāi)發(fā)中,表單元素(控件)不可見(jiàn),你用visibility還是display?
下面說(shuō)一個(gè)通用的方法。如果你想隱藏某元素,但在頁(yè)面上保留該元素的空間的話,你應(yīng)該使用visibility: hidden 。如果你想在隱藏某元素的同時(shí)讓其它內(nèi)容填充空白的話應(yīng)該使用 display: none 。
實(shí)踐出真知
ok,最后獻(xiàn)上下午我寫(xiě)的這個(gè)簡(jiǎn)單的js小函數(shù)來(lái)做為實(shí)踐總結(jié)。這個(gè)小函數(shù)的功能是,當(dāng)用戶選擇了下拉列表框后,獲取下拉列表框的值,根據(jù)這個(gè)下拉框的值來(lái)判斷某些元素(控件)可見(jiàn)或是不可見(jiàn)。很簡(jiǎn)單滴。。。
1 function ChangeReason() {
2 if (ccbChangeReason.value == "A 建設(shè)銀行") {
3 checkbox1.style.visibility = "visible";
4 checkbox2.style.visibility = "visible";
5 checkbox3.style.visibility = "visible";
6 lblElseReason.style.visibility = "hidden";
7 txtcElseReason.style.visibility = "hidden";
8 }
9 if (ccbChangeReason.value == "B 工商銀行") {
10 checkbox1.style.visibility = "hidden";
11 checkbox2.style.visibility = "hidden";
12 checkbox3.style.visibility = "hidden";
13 lblElseReason.style.visibility = "hidden";
14 txtcElseReason.style.visibility = "hidden";
15 }
16 if (ccbChangeReason.value == "C 農(nóng)業(yè)銀行") {
17 checkbox1.style.visibility = "hidden";
18 checkbox2.style.visibility = "hidden";
19 checkbox3.style.visibility = "hidden";
20 lblElseReason.style.visibility = "visible";
21 txtcElseReason.style.visibility = "visible";
22 }
23 }