Web前端期末複習【超實用】

教材:《Web前端開發技術——HTML、CSS、JavaScript(第2版)》

聶常紅 主編 王剛 潘正軍 唐遠強 副主編  這本書講得較淺,自學的話不推薦購買!對你有幫助的話記得點贊、關注哦!

我們是手機端考試。教這門課的老師很漂亮也很盡職,每節課我們都要用手機簽到、做課堂習題(鞏固剛講的內容),課後還佈置適量作業,這些都計入平時成績。老師的PPT相比其他老師的更容易理解(可能是前端本身的原因),講到什麼就運行該代碼,演示給我們看結果。雖然有些沮喪於我的期末成績並不高,但這位老師無疑給我留下了較深刻的印象。

這本書的HTML內容完完整整總結如下(書上有些屬性已過時)

 本複習資料適合對前端有所瞭解的人,代碼複製到CSDN上有點排版錯誤,這是我手動調的(排版)。

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>HTML學習總結</title>
    <meta name="keywords" content="關鍵字1,關鍵字2,..." />
    <meta name="discription" content="網站簡介" />
    <meta name="copyright" content="本資料版權歸Pigeon所有。All Rights Reserved">
    <meta http-equiv傳送HTTP通信協議標題頭="content-type" content="text/html定義文檔的MIME類型" />
    <meta http-equiv鍵-值對="refresh" content="3" /><!--每隔3秒刷新一次-->
    <meta http-equiv="refresh" content="刷新間隔時間;url=頁面地址" /><!--自動跳轉-->		
</head>
<body background="圖片路徑" bgcolor="" bgproperties="fixed" link="" alink="" vlink="" leftmargin="">
    &quot;<!--"--> &lt;<!--<--> &copy;<!--©--> &trade;<!--™-->
    &amp;<!--&--> &gt;<!-->--> &reg;<!--®-->
    <h2 align=""><font face="隸書" color="" size="">字號默認爲3</font></h2>
    <b></b><strong>粗體</strong>
    <i></i><cite></cite><em></em><var>斜體</var>
    <sup>上標</sup><sub>下標</sub><big>大號字</big><small>小號字</small><u>下劃線</u>
    <s></s><strike>刪除線</strike>
    <p>單標記只跟上文產生一空行間隔,雙標記則與上下文都產生</p>
    兩個<br />等效於一個<p>單標記
    <pre>
        預格式化標記
    </pre>
    <center>居中標記</center><blockquote>縮排標記</blockquote>
    <hr width="" size="" align="" noshade="noshade" color="" />水平線
    <ol type="1/a/A/i/I(前導符)" start="3(起始編號)">
        <li>有序列表</li>
    </ol>
    <ul type="disc●/circle○/square■">
        <li>無序列表</li>
    </ul>
    <dl><!--聲明定義列表-->
	<dt>名詞一</dt>
	<dd>解釋一</dd>
	<dd>解釋二</dd>
    </dl>
    <img src="" width="" height="" alt="提示文本" vspace="垂直間距" hspace="水平間距" border="" />
    <marquee direction="up/down/left/right滾動方向" behavior="scroll/slide/al滾動行爲" scrollamount="速值默認爲6" scrolldelay="默認100毫秒">滾動字幕</marquee>
    <embed src="視頻路徑" width="" height="" hidden="hidden">嵌入視頻</embed>
    <object classid="" codebase="url">
	<param name="" value="動畫路徑" />
	<embed pluginspage="http://www..." src="" type="application/x-shockwave-flash"></embed><!--專門針對Netscape網景-->
    </object>
    <bgsound src="音樂路徑" loop="-1循環播放"></bgsound><!--默認播放一次-->
    <applet code="xx.class">Java小程序</applet>
    <!--嵌套分割窗口-->
    <frameset name="作爲超鏈接的target" cols="水平分割(像素/百分比)" rows="垂直分割" frameborder="默認1(0即no)" framespacing="" />
    <noframes><body>瀏覽器版本過低,不支持框架</body></noframes>
    <iframe name="" src="" noresize="省略時可調節窗口大小" scrolling="auto/no/yes" >若要使浮動框架在水平居中,需在外嵌套一個<div align="center"></iframe>
    <a href="目標端點" target="_blank新窗口打開/_parent/_search/_self/_top忽略框架在整個窗口中打開"></a>
    <!--http://——www進入萬維網
        mailto:收件人郵址?subject=主題名&cc=抄送郵址&bcc=暗抄送郵址——E-mail啓動郵件發送系統
	ftp://——FTP進入文件傳輸服務器
	telnet://——Telnet啓動遠程登錄方式
	news://——News啓動新聞討論組-->
    <a name="#書籤名(內部書籤)/file_url#書籤名(外部書籤鏈接)" href="腳本鏈接/文件下載鏈接">
        <img src="圖片鏈接" />
    </a>
    <!--圖像映射-->
    <img src="地圖鏈接" usemap="#Map" />
    <map name="Map">
	<area shape="rect/circle" coords="x1,y1,x2,y2前兩個是頂點座標;後兩個是右下頂點/x,y,r前兩個是圓心;後一個是半徑" href="#Asia" alt="亞洲" />
    </map>
    <table border="像素" bordercolor="" bgcolor="" background="" cellpadding="內容邊距" cellspacing="間距默認爲2">
    <caption align="left/center水平居中/right" valign="top/middle垂直居中/bottom">表格標題</caption>
    <tr>
	<th></th>
    </tr>
    <tr>聲明一行
	<td>聲明一單元格</td>
    </tr>
    </table>
    <form name="" action="" method="post/get(P116)" onsubmit="指定處理表單的腳本函數" enctype="設MIME類型,默認application/x-www-form-urlencoded;若需上傳文件到服務器時應改爲multipart/form-data">
        <input type="text/password/file/hidden隱藏域傳遞value值/radio/checkbox/button默認沒字/submit/reset默認寫“重置”/image" name="" maxlength="最多可輸入" size="默認24" value="默認值" checked="checked" onclick="delete"/>
        <script>
	    function delete(){
	        if(confirm("確定要刪除嗎?"))
		    window.location="delete.jsp";
	    }
        </script>
        <select name="fruits" size="2" multiple="multiple">
	    <option value="apple" selected="selected">選擇列表</option>
        </select>
        <textarea name="remark" rows="行數" cols="列數"></textarea>
    </form>
	<!--html(Hypertext Markup Language)超文本傳輸語言
            http(Hypertext Transfer Protocol)超文本傳輸協議
	    URL(Uniform Resource Locator)統一資源定位符
	    W3C(World Wide Web Consortium)萬維網聯盟
	    CSS(Cascading Style Sheet)層疊樣式表-->
</body>
</html>

這本書的CSS內容總結(書本只列舉最常用的東西)

 一、標記選擇器

                        

二、字體屬性

                         font-size(絕對大小、相對大小、百分數、具體值pt、px、in)

                         font-family

                         font-weight(normal、lighter、bold、bolder)

                         font-style(normal、italic=oblique)

三、文本屬性

                         text-indent首行縮進,常用單位是pt

                         line-height行間距,常用單位是pt

                         letter-spacing字間距,常用單位是pt

                         text-decoration(underline、overline、line-through、none)

                         text-align(left、center、right、justify兩端對齊)

四、列表屬性

                         list-style-image用圖像作爲列表項的引導符號

                         list-style-position決定縮進程度(outside列表貼近左側邊框顯示、inside列表縮進顯示)

                         list-style-type(none、disc●、circle○、square■、decimal普通數字、lower-roman小寫羅馬字、upper-roman大寫羅馬字、lower-alpha小寫英文、upper-alpha大寫英文)

 五、顏色和背景

                         color

                         background-color

                         background-image

                         background-repeat(repeat-x橫向重複、repeat-y縱向、repeat、no-repeat)

                         background-position(left、right、center、top、bottom)                      

六、區塊

                         width、height、float讓文字環繞周圍、clear禁止浮動元素出現在所屬對象旁邊、padding內邊距、margin外邊距(top、bottom、left、right)

七、層屬性(允許盒子重疊)

                         top(單位px)、left、width、height、Z-index包含正負數,決定層的先後順序和覆蓋關係,值高的覆蓋較低的

                         clip限定只顯示裁切出來的區域,該區域是矩形。只要設置兩點即可(矩形左上角頂點由top和left設置、右下角由bottom和right設置)

                         overflow(visible當層內的內容超出層所能容納的範圍時可見、hidden、scroll、auto)

                      ★定位流position(static靜態定位、relative相對定位、absolute絕對定位、fixed固定定位)

static:默認屬性值,盒子按照標準流(包括浮動方式)進行佈局。

relative:相對於自己以前在標準流中的位置偏移指定距離。通過left、right、top、bottom指定偏移量。

                         在相對定位中同一方向上的定位屬性只能使用一個;

                         ∵相對定位是不脫離標準流的,會繼續在標準流中佔用空間 ∴區分塊級元素、行內元素、行內塊級元素且設margin、padding等屬性會影響標準流的佈局。

                         一般用於盒子位置的微調。

absolute:相對於body或某定位流(非static屬性)中的祖先元素來偏移。默認是相對於body定位的,會隨着頁面的滾動而滾動。

                         ∵脫離標準流,不會佔用標準流的位置 ∴不區分 ~

                         絕對定位元素會忽略祖先元素的padding

                         一般配合相對定位來使用,不會單獨出現 eg.做覆蓋效果

fixed:盒子位置固定在瀏覽器窗口上。

                         ∵脫離標準流,不佔位 ∴不區分


當給一個元素設置的寬高無效時,可以通過display將模式轉換:塊↔行內 ;塊、行內→行內塊

塊級元素display="block"獨佔一行。可任意設置其大小、內外邊距(寬度默認爲所在容器的100%),是用於搭建網頁佈局的必須部分,使網頁結構更緊湊。常見的塊級元素有<div>、<h1>~<h6>、<p>、<ul>、<table>等,其中<div>是最常用最典型的。可容納行內元素和其他塊元素。特殊:文字類的塊級元素不能放塊元素,例如<p>/<h1>~<h6>/<dt>。

行內/內聯元素display="inline":和相鄰的行內元素在同一行上。設置寬高無效(默認寬高是他自身內容的寬高)。水平方向的padding和margin屬性可以設置,但垂直方向上的無效。行內元素只能容納其他行內元素或者文本。特殊:<a>可以放塊級元素,但是鏈接裏面不能再放鏈接。

行內塊級元素display="inline-block"和相鄰行內元素在同一行,但是之間會有空白縫隙。默認寬度是他本身內容的寬度。寬度、高度、行高、內外邊距和對齊模式都可以手動設置。如<img>、<input>、<td>。


八、盒子模型  

                        

                         border-color

                         border-width

                         border-style:none、hidden、dotted、dashed、solid、double

                         padding設置1個屬性值:表示上下左右4個內邊距。

                         padding設置2個屬性值:前者表示上下內邊距,後者表示左右內邊距。

                         padding設置3個屬性值:前者表示上內邊距,中間者表示左右內邊距,後者表示下邊距。

                         padding設置4個屬性值:依次表示上、右、下、左內邊距(順時針)。

padding是內邊距,不會影響盒子的外部,而margin是外邊距,直接影響。

       兩個行內元素間的水平間距 = 左邊元素的右外邊距 + 右邊元素的左外邊距

       兩個塊級元素間垂直間距 = Max(上邊元素的下外邊距,下邊元素的上外邊距) 稱爲margin的"塌陷"現象,即較小margin塌陷到較大margin中了的塊級元素間的垂直定位。

        父子盒子嵌套,當子div的margin爲正值時:父盒子寬度隨瀏覽器自由延伸,子盒子寬度隨父盒子之變而變

                        

        當子div的margin爲負值時:①子盒子本身沒有寬度,會增加元素寬度 ②子盒子本身有寬度,會產生位移

                          情況①               情況②

        ③margin-top= -100px 卻產生了向上50px的位移  (撓頭疑惑!

                                   

                         float:none、left、right,非none的屬性值將所有對象視作“塊對象block-level”,忽略它原有的display值,並脫離標準流。默認情況下,根據對象內容來決定其寬、高。非浮動對象會代替浮動對象在標準流中的位置,且其文字內容會圍繞浮動對象。

九、Div標記&Span標記

                         <div>是區塊容器標記,塊級元素,<div>內的元素會自動換行,這是與<span>的區別所在。<div>容器裝的是內容,CSS作爲裝飾內容的樣式。

                         <span>是相對<div>較小的容器,行內元素,在它前後不會自動換行,沒有結構意義,純粹應用CSS。

                         DIV+CSS佈局&表格佈局の比較:

                        ●通過<table>各個單元格可輕鬆劃分模塊,製作簡單;CSS通過<div>來劃分模塊,同時需要調整各模塊間的位置及排列。

                        ●各模塊放在<table>內,會隨着單元格的大小自動調整,背景顏色等設置比較簡單;DIV+CSS的模塊層層嵌套,背景顏色等樣式屬性設置比較複雜。

                        ●單元格可加入CSS的margin和padding等屬性控制效果。

                        ●表格佈局比DIV+CSS佈局維護要困難。eg.要對換left和right的內容,表格佈局的工作量與製作新的頁面相當,而DIV+CSS佈局只需修改位置即可。

十、鼠標屬性

                         cursor:default、pointer手形狀、crosshair十字交叉、text文本選擇、wait爲Windows的沙漏形、help問號、e-resize指向東的箭頭、ne-resize東北、n-resize北、nw-resize西北、w-resize西、sw-resize西南、s-resize南、se-resize東南)

十一、濾鏡屬性

                        filter:mark爲對象建立一個覆蓋於表面的膜、blur模糊效果、chroma設對象中指定的顏色爲透明色、dropShadow陰影效果、flipH水平翻轉、flipV垂直翻轉、glow光暈、invert對象的可視化屬性全部翻轉,包括色彩、飽和度和亮度、shadow在指定方向建立物體投影、wave把對象按垂直波紋樣式打亂、xray使對象產生X光片效果、alpha設透明度

十二、在HTML中用CSS                                 

                         解決CSS衝突:

                         ●優先級:內聯式(直接在<body>標籤裏寫style="...") > 內嵌式(寫在<head>裏的<style>裏) > 外部鏈接(<link href="..." type="text/css" rel="stylesheet">實現了頁面框架代碼與CSS代碼完全分離,使得前期製作和後期維護都十分方便) > 導入式(在<head>中的<style>裏寫@import url(xx.css))

                         ●在多個外部樣式中,後出現的樣式的優先級高於先出現的樣式

                         ●在樣式中,選擇器的優先級:ID樣式 > class樣式 > 標記樣式

                         導入式&鏈接式の區別:

                         ■被導入的HTML文件在初始化時,會將該CSS文件導入HTML文件中,作爲此HTML文件的一部分,類似於內嵌式。

                         ■鏈接式是在HTML文件的標記需要CSS時纔會以鏈接方式被導入進來。

JavaScript目前我不想寫了

部分課堂作業(獻醜了,不放代碼,純屬留念)

 

實驗課實驗三作業(其它的沒保留)

1、將1~10之間的奇偶數分開,頁面呈現方式如下:

<html>
<head>
     <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
     <title>將1~10之間的奇偶數分開</title>
     <script type="text/javascript">
     for(var i=1;i<=10;i++){
         if(i%2==0){
	      document.write("i="+i+"是偶數"+"<br>");
	 }else{
	      document.write("i="+i+"是奇數"+"<br>");
	 }
     }
     </script>
</head>
<body>
</body>
</html>

2、任意輸入一個年份,判斷是否爲閏年。

<html>
<head>
     <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
     <title>任意輸入一個年份,判斷是否爲閏年</title>
     <script type="text/javascript">
      	  function check(){
	       var date=year.value;
	       if(date%4==0 && date%100!=0){
	            alert(date+"是閏年");
 	       }else if(date%400==0){
		    alert(date+"是閏年");
	       }else{
		    alert(date+"不是閏年");
	       }
          }
         
     </script>
</head>
<body>
    請輸入年份:
    <input name="year"type="text"id="year">
    <input type="button"value="是否是閏年"onclick="return check()">
</body>
</html>

3、任意輸入一個字符串,單擊“確定”按鈕,輸出字符串的長度。

<html>
<head>
     <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
     <title>任意輸入一個字符串,單擊“確定”按鈕,輸出字符串的長度</title>
     <script type="text/javascript">
          function measure(){
		var s=string.value;
		alert("字符串"+s+"的長度是"+s.length);
	  }
     </script>
</head>
<body>
    請輸入一個字符串:
    <input name="string"type="text"id="string">
    <input type="button"value="確定"onclick="return measure()">
</body>
</html>

4、設計實現一個帶開關的時鐘。

<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <title>帶開關的時鐘</title>
    <script>
        var a = 0;  //0:開 1:關
        function time() {
            T = window.setTimeout("time()", 1000);
            var today = new Date();
            document.clock.disp.value = today.toLocaleString();
            if (a == 1) {
                document.clock.disp.value = '';
                clearTimeout(T);
                a = 0;
            } else {
                if (a == 0) {
                    var T = setTimeout('time()', 1000);
                    a = 1;
                }
            }
        }
    </script>
</head>
<body>
    <form name="clock">
        <input type="text" name="disp" value="" size=30 onFocus="this.blur()">
        <br>
        <input type="radio" name="sjq" value="off" onClick="time()" checked>
        關
        <input type="radio" name="sjq" value="on" onClick="time()">
        開
    </form>
</body>
</html>

5、設計實現一個頁面,要求如下:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>歡迎光臨</title>
    <script language="javascript">
        function check(){
                var name= document.form1.name.value;
                var pwd= document.form1.pwd.value;
                if((name=="") || (name==null)){
                    alert("請輸入用戶名:");
                    document.form1.name.focus();
                    return;
                }else if ((pwd=="") || (pwd==null)){
                    alert("請輸入密碼:");
                    document.form1.pwd.focus();
                    return;  
                }else{
                    document.form1.submit();
                }
       }
</script>
</head>
<body>
     <h4>請輸入用戶信息:</h4>
     <form name="form1" action="" method="post">
           用戶名:<input type="text" name="name"><br/>
           密碼: <input type="password" name="pwd" size="20"><br/>
           性別: <input type="radio" value="female" name="gender"/>女
                 <input type="radio" value="male" name="gender"/>男<br/>
           愛好:<input type="checkbox" value="music" name="m1"/>音樂
                <input type="checkbox" value="swimming" name="m2"/>游泳
                <input type="checkbox" value="playing" name="m3"/>遊戲<br/>
	   城市:
           <select name="city">
		<option value="city1"selected="selected">石家莊</option>
   		<option value="city2">老馬頭</option>
 		<option value="city3">北京</option>
           </select><br/>
           個人簡介:<textarea name="remark" row="30" cols="30">請在此處填寫自己相關信息</textarea><br/>
           <input type="button" value="提交" onclick=" return check()">     
           <input type="reset" value="重置"/>   
</form>
</body>
</html>

6、設計實現如下頁面:

<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <title>學生信息呈現</title>
</head>
<script>
    var age;
    function alter(){
        var age = prompt("請輸入年齡","20");
        document.form1.age.value=age;
    }
</script>
<body>
<form name="form1">
    張三的年齡爲:<input type="text" name="age" value="20"/>
    <input type="button"  value="修改年齡" onclick="alter()"/>
</form>
</body>
</html>

7、設計實現如下頁面:

<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <title>計算喜歡的顏色</title>  
</head>
<script type="text/javascript">
       function form1(){
           var x=document.getElementsByName("color");
           var m=0; 
           var n=false;
           for(var i=0;i<x.length;i++)
           {
               if(x[i].checked)
               {
                  n=true;
                  m++;
               }
           }
           alert("你喜歡"+m+"種顏色");    
      }
</script>
<body>
    請選擇你喜歡的顏色: <br/>      
    <input type="checkbox" id="c" name="color" value="1"/>紅色
    <input type="checkbox" id="c" name="color" value="2"/>綠色
    <input type="checkbox" id="c" name="color" value="3"/>藍色<br/> 
    <input type="button" onClick="form1()" value="請單擊"/> 
</body>
</html>

8、設計實現如下頁面:

<--index.html-->
<html>
<head>
     <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
     <title>設計頁面</title>
</head>
<frameset cols="17%,*">
    <frame src="menu.html"name="menu"/>
    <frameset rows="15%,*">
        <frame src="top.html"name="top"/>
        <frame src="default.html"name="right"/>
    <frameset/>
</frameset>
</html>
<--default.html-->
<html>
<head>
     <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
     <title>default</title>
</head>
<body>
    <center>
    <h1><font color="red">Welcom</font></h1>
    </center>
</body>
</html>
​<--menu.html-->
<html>
<head>
     <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
     <title>menu</title>
</head>
<body>
    <ul>
        <li><a href="right.html"target="right">會員登錄</a></li>
        <li><a href=""target="right">熱門優惠</a></li>
        <li><a href="default.html"target="right">回首頁</a></li>
    </ul>
</body>
</html>​
<--right.html-->
<html>
<head>
     <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
     <title>任意輸入一個字符串,單擊“確定”按鈕,輸出字符串的長度</title>
     <script type="text/javascript">
          function register(){
		
	  }
     </script>
</head>
<body>
    請輸入大名:
    <input name="string"type="text"id="string">
    <input type="button"value="填寫完畢"onclick="return register()">
</body>
</html>
​<--top.html-->
<html>
<head>
     <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
     <title>滾動字幕</title>   
</head>
<body>
     <marquee direction="right"behavior="alternate">親愛的<font color="red"><u>無名氏</u></font>會員,歡迎你!
    </marquee>
</body>
</html>​

 

9、設計實現如下效果:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>倒計時五秒後跳頁面</title>
    <script>
        function countDown(){
            //獲取初始時間
            var time = document.getElementById("Time");

            //獲取到id爲time標籤中的數字時間
            if(time.innerHTML == 0){
                //等於0時清除計時,並跳轉該指定頁面
                window.location.href="http://www.ccut.edu.cn/";
            }else{
                time.innerHTML = time.innerHTML-1;
            }
        }
        //1000毫秒調用一次
        window.setInterval("countDown()",1000);
    </script>
    <style>
        #Time,#p{
            font-size: 150px;
            text-align: center;
        }
        #Font,#p{
            font-size: 100px;
            text-align: center;
        }
    </style>
</head>
<body>
    <font color="yellow"><p id="Time" >5</p></font>
    <h1>長春工業大學</h1>
    <h2>http://www.ccut.edu.cn/</h2>
    頁面跳轉倒計時:<span id="myspan">5</span>
    <p id="Font">將跳轉至主頁</p>
</body>
</html>

期末考試最後兩大題(其它的沒保留截圖)

 紙上寫代碼

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章