頁編程之折疊標簽。
HTML<details>標簽,同學們好,這里是免費少兒編程知識分享,每天一行代碼誰都能學會!今天分享的知識是創(chuàng)建一個可以折疊的元素,也就是說可以通過點擊來切換顯示和隱藏,通常用于詞語解釋或者對某些內(nèi)容進行注解。
折疊的好處是在最開始的時候可以不用去占用網(wǎng)頁上的空間,不用的時候也可以像這樣收起來,不影響其他內(nèi)容的顯示。用到了HTML5新增的details標簽和summary標簽。
先來看看今天實例的運行效果,網(wǎng)頁上有一個大大的H1標簽,這只是為了排版效果,下方才是重點。可以看到有簡介,瀏覽器支持說明123,這些文字的前方無一例外的都有一個三角箭頭,點擊之后就可以展開和收起相應的內(nèi)容。展開之后箭頭會變成向下的狀態(tài),收起之后就會指向右方,隨便點擊看一看都是這樣的沒有問題。
效果各位同學都已經(jīng)看到了,來看看實現(xiàn)的代碼吧。首先要說明一下,details 和 summary 標簽是必須要一起出現(xiàn)的,單獨出現(xiàn)是沒有任何效果的。summary 標簽必須是在details標簽內(nèi)部,F(xiàn)Pail向瀏覽器聲明了將在此插入一個可以折疊的元素。
而 TRair標簽告訴了瀏覽器,這個折疊元素的標題是什么,也就是剛才點擊的內(nèi)容部分是什么。在details標簽中,但是沒有在summary標簽中的內(nèi)容,就是可以被折疊的內(nèi)容本身。每一個 details 標簽和 fully 標簽必須一一對應。
說人話就是一個details標簽,里面只能出現(xiàn)一個 iTunes,samml,samml,samml,這個屁標簽是可有可無的。如果說沒有,它內(nèi)容就會和標題貼在一起。
為了美觀還是加上一個比較好
而有了這個標簽之后也確實能減少很多重復的工作。
目前國內(nèi)大多數(shù)瀏覽器都支持極速模式,即采用Stot內(nèi)核,因此一般情況下它都能正常顯示。具體情況還需視個人情況而定。
今天的分享就到這里,希望各位同學能夠認真練習三遍,即使不看視頻也能獨立完成。所有案例和相關文檔都可向我索取。下期再見,想學習編程,記得關注哦。
一章 職業(yè)規(guī)劃和前景
第二章 html基本結(jié)構(gòu)
<html> <head></head> <body></body> </html>
第三章 html基本標簽
<marquee direction="down" loop="4" onmouseover=this.stop() onmouseout=this.start()></marquee>
onmouseover=this.stop() onmouseover=this.start() scrollamout="1"(滾動速度)
第四章 img圖片標簽與路徑
第五章 三種列表的講解
<ul> <li></li> <li></li> <li></li> </ul>
<ol> <li>內(nèi)容一</li> <li>內(nèi)容二</li> <li>內(nèi)容三</li> </ol>
<ul> <li>柚子 <ul> <li>沙田柚</li> <li>蜜柚</li> </ul> </li> <li>荔枝</li> <li>蘋果</li></ul>
<ol> <li>茶 <ul> <li>紅茶</li> <li>綠茶</li> </ul> </li> <li>果汁</li> <li>牛奶</li></ol>
<dl> <dt>pc網(wǎng)頁制作</dt> <dd>學習DIV+CSS JS JQ 項目實戰(zhàn)</dd> <dt>手機網(wǎng)頁制作</dt> <dd>手機網(wǎng)頁制作實戰(zhàn)</dd> </dl>
<dl> <dt>中國城市</dt> <dd>北京 </dd> <dd>上海 </dd> <dd>廣州 </dd> <dt>美國城市</dt> <dd>華盛頓 </dd> <dd>芝加哥 </dd> <dd>紐約 </dd> </dl>
第六章 表單元素(上)
<form> <input type="text"/> </form>
<form action="html.do" method="get"> username: <input type="text" name="user" /> <input type="submit" value="提 交" /> </form>
<form> <input type="hidden" name="hid" value="value"> </form>
<input type="text" name="" value="今天心情不錯" /> <input type="radio" name="" value="" checked="checked"> <input type="checkbox" name="" value="" checked="checked"> <select name="" > <option value=""></option> <option value="" selected="selected"></option> <select>
<p>單向選擇</p> <label for="male">男:</label><input type="radio" name="sex" id="male"/> <label for="nv">女:</label><input type="radio" name="sex"checked="check"/>
第七章 表單和表格(下)
<form> <select name="" id=""> <option value="1">1月</option> <option value="2">2月</option> </select> </form>
<table border="1"> <tr> <td>姓名</td> <td>性別</td> </tr> </table>
<table border="1"> <tr> <td>姓名</td> <td>性別</td> </tr> <tr> <td>姓名</td> <td>性別</td> </tr> </table>
<table border="1"> <tr> <td >姓名</td> <td>性別</td> <td>愛好</td> </tr> </table>
第一部分總結(jié):
HTML部分導圖總結(jié)
學習從來不是一個人的事情,要有個相互監(jiān)督的伙伴,想要學習或交流前端問題的小伙伴可以私信“學習”小明加群獲取2019web前端最新入門資料,一起學習,一起成長!
近做了一個郵件模板功能,就是可以在后臺定義各種情況下的發(fā)送郵件驗證碼的模板,如下圖所示:
可以定義「注冊賬號」,「重置密碼」,「驗證郵箱」等各種情況下的郵件模板的標題和內(nèi)容。使用 WPJAM Basic 的生成表單功能,實現(xiàn)是非常簡單,具體的代碼就是生成三個 fieldset 字段組,使用 foreach 簡單就能處理:
$fields = [];
foreach(['register'=>'注冊賬號', 'resetpass'=>'重置密碼', 'verify'=>'驗證郵箱'] as $type => $title){
$fields[$type] = ['title'=>$title, 'type'=>'fieldset', 'fields'=>[
$type.'_subject' => ['title'=>'標題', 'type'=>'text'],
$type.'_message' => ['title'=>'內(nèi)容', 'type'=>'textarea', 'rows'=>3],
]];
}
但是感覺這樣重復的界面非常占用空間,有沒有什么好的優(yōu)化方式,比如折疊起來,點擊展開之后再設置?
我查了一下,其實無需 Javascript,只需用 HTML 的 summary / details 這兩個標簽就能實現(xiàn)。
所以我增強了一下 WPJAM Basic fieldset 組件的能力,fieldset 組件只需要設定 summary 屬性,就能使用 summary / details 實現(xiàn)折疊展開效果,具體代碼如下:
$fields = [];
foreach(['register'=>'注冊賬號', 'resetpass'=>'重置密碼', 'verify'=>'驗證郵箱'] as $type => $title){
$fields[$type] = ['title'=>$title, 'type'=>'fieldset', 'summary'=>$title.'時郵件設置', 'fields'=>[
$type.'_subject' => ['title'=>'標題', 'type'=>'text'],
$type.'_message' => ['title'=>'內(nèi)容', 'type'=>'textarea', 'rows'=>3],
]];
}
相比第一段代碼,這段代碼就是增加了 summary 屬性設置,最后的效果如下:
默認情況都只顯示摘要,點擊摘要時候,就會展開字段組設置,如上圖,我點擊了第一個 fieldset 字段組的摘要,「注冊賬號」這個郵件模板就展開了,其他兩個則還是沒有折疊的狀態(tài)。
*請認真填寫需求信息,我們會在24小時內(nèi)與您取得聯(lián)系。