1. 程式人生 > 其它 >回顧html+css(1)

回顧html+css(1)

技術標籤:前端htmlcsses6

一.html和web網頁組成部分

		1.什麼是html
			超文字標記語言
		2.html的語法
			雙標記 常規標記
			單標記 空標記
		3.常用的標記
			1) 文字標題h1~h6(其中h1只能用一次,h2用三次)
			2)段落標記p
			3)空格 &nbsp分號結束
			4)  加粗 b strong
			5)傾斜 i em
			6)強制換行 br
					word-break:break-all;
					另起一行換行 word-weap:break-word;
			7)水平線 hr
			8)上角標 sup  下角標 sub
			9)列表3
				無序列表 ul li
				預設有一個實心圓(想要改變符號樣式 給ul新增type=“square” 方形 circle空心圓)
				有序列表 ol li
				預設是數字(想要改變符號樣式 給ol新增type=“A start=3”開始的位置)
				自定義列表 dl dt dd
				規範的注意點:一組裡面只能有一個dt 可以有多個dd
				常用的場景:圖文排列(圖在上自在下	 圖在左字在右)
			10)插入圖片<img src=""/>
				src相對路徑的寫法
				-1.如果當前檔案是html和目標檔案所在的目錄是同一級 路徑的寫法:目標檔案的名字.副檔名
				-2.如果當前檔案和目標檔案所在的資料夾在同一級目錄,路徑寫法:目標檔案的資料夾的名字.副檔名
				-3.如果當前檔案在找目標檔案的過程中,需要後退的時候,路徑在寫的時候需要新增./如果是後退2步.J.Jlaqiang.ipg
				title屬性:滑鼠懸停上去的提示資訊
				alt屬性:圖片載入失敗時的提示資訊
			11)超連結 <a></a>
				路徑:href:“”
				title屬性:滑鼠懸停上去的提示資訊
				target=“_blank”   新視窗開啟 預設值:_self
			12)沒有太多預設樣式的標籤
				div 劃分區域
				span 可以是某幾個或者某幾個字
			14)表格
				表格的作用:資料的顯示或者資料統計
				表格 table
				行 hr
				列或者單元格 td
				相關屬性:
					width ,height,border,bordercolor,bgcolor,
					對齊方式:align=“center” left right
					單元格和單元格間距 cellspacing="0"
					單元格個內容的間距  cellpadding
					行合併  rowspan="合併的數" 注意要刪除多餘的單元格
					列合併 colspan="合併的列"
					單元格邊框合併 border-collapse:collapse
					列表隔行變(eve/2n    odd/2n+1)
									tr:nth-child(even){
									    background-color: gray;
									}
		4.web網頁組成的部分
			html結構
			css修飾
			javaScript行為

二.html表單和css基礎

	html的表單
		作用:收集資料的時候
				
			建立表單<form></form>
				設定資料傳送方式method="get和post"
				action=""
				name=	"表單的名字"
			輸入框<input/>
				屬性;type
					文字框:type="text"
					密碼框:type="password"
					提交按鈕:type="submit" <button></button>
					重置按鈕:type="reset"
				表示提示資訊:placeholder
				滑鼠單擊為手型:cursor:pointer
			value=""
				如果type="submit或者reset value的作用是修改內容
				如果type的值是text或者password value的作用是獲取使用者的資訊
				
	css基礎:
		什麼是css:層疊樣式表
		css語法:選擇器{屈性:屬性值:屬性和屬性值合起來的整體叫做宣告
		寫在哪裡(引入方式):
		內部樣式: 在頭部裡面寫<style></style>
		外部樣式:連結<link href=" rel="stylesheet" type=""textcss">
						  匯入<style>@important  url()</style>
						  link和import之間和區別?
						    1.本質的區別link是HTML的寫法import是CSS的一種引入方式
							2.載入順序上的link在載入的時候他是和HTMIL同時載入的,而impor載的
							3.相容上的link沒有相容問題import有相容問題。
							4、js控制dom改變樣式的時候,link可以修改的
		內聯樣式:行內樣式嵌入式樣式寫法<div style="width:200px;"></div>
		選擇器(選擇符) 的分類	
		1)直接用HTML標籤的名字作為選擇器的,比如div+ p礙h1元素選擇器或者型別選擇器
		2)  多個—樣的元素想要區分的時候,可以用class選擇器或者id選擇器
				class的選擇器的語法:.class的名字{}
				ID選擇器的語法id名字{}    特點:唯一性
		3)想要所有的元素都變的時候,就用萬用字元
		4)  多個元素樣式一樣的時候,用群組選擇器,群組選擇器語法:選擇符1,選擇符2,選擇3{屬性:屬性值}

三.css選擇器和核心屬性

1.css選擇器
		包含選擇器(後代選擇器):語法 父元素  子元素{}
		偽類選擇器
			超連結預設的狀態alink
			超連結訪問過後avisited
			滑鼠經過的: hover
			超隧接啟用時候的狀態aactivef
2.css選擇器權重
		型別選擇器的權重是0001
		class選擇器0010
		id選擇器0100
		包含選擇器所有的之和
		偽類選擇器0010
		內聯樣式表1000
3.css核心屬性
		文字相關屬性
				font-size (瀏覽器預設大小16px)
			字型顏色 color
					直接寫單詞red
					用16進製表示#999999
					用rab(0,0,0)
					透明度rgba(0,0,0,0) a的取值範圍是0-1
			字型 font-fanily
					如果是中文字型或者有多個英文單片語成字型,需要新增雙引號
					多個字型之間用逗號隔開
			文字的加粗 font-family
					100-500表示的是不加粗
					600-900表示的加粗
					這些shuzh後面是沒單位的
			文字傾斜 font-style
					italic oblique表示的是傾斜
					normal 不傾斜
			文字的水平對齊方式
					taxt-align:center;right left
			文字的垂直位置
					行高line-height
					ps在測量的時候,如果文字大小一樣,那麼就是從上一行文字的頂部到下一行頂部
					line-height:1;其中的1表示的意思是字型大小的1倍(可以清除文字自帶的上下間距)
			簡寫 font
					簡寫的順序不能亂font:italic 800 20px/40px"宋體"
					最少有兩個引數 必須要有字號大小和字型
			首行縮排text-indent
					只對首行起作用
					可以給負值,負值往左邊走
			文字修飾:text-decoration
					text-decoration:none;一般會給a去除下劃線
					下劃線:underline
					上劃線:overline
					刪除線:line-through
					字間距:letter-spacing
					詞間距:word-spacing
					英文的處理方式
							英文大小寫的轉換 text-transform
		列表的相關屬性:
				去除列表前的小黑點 list-style:none;
		背景的相關屬性
				背景顏色background-color
				背景圖	background-image:url( );
					預設情況下,背景圖是顯示不了的,但是有內容或者設定了寬高就可以顯示了
					背景圖預設是平鋪
					背景圖顯示的範圍 由內容的多少或者寬高決定的
		背景圖的平鋪background-repeat
					預設值repeat
					不平鋪no-repeat
					橫向平鋪repeat-X
					縱向平鋪repeat-Y
		背景圖的位置background-position:水平位置 垂直位置
					取值可以負值
		背景圖固定back-attachment:fixed;
					簡寫:background:不需要注意順序

四.css核心屬性

	浮動屬性:
	
		left,right,none
		什麼時候用,讓元素橫著排過去
	清除浮動:
		clear:left,right,both				
	關於調整間距的
	
		外邊距margin
			實現一個盒子的水平居中(margin:0 auto;)
			可以為負數
		margin-top的相容問題
			產生的條件 預設情況下,給子元素新增margin-top,父元素會跟著一起下來
			解決的辦法:
				1.給父元素新增overflow-hidden;
				2.給父元素新增border-top:1px solid rgba(0,0,0""
				3.margin換成padding
				4.給父元素或者子元素浮動
		內間距(添白,補充)padding
			如果該元素有設定寬度或者高度,新增padding之後需要做減法
			如果分析間距相對於該元素是裡面的話,可以用padding
			如果想要調整背晏圖和內客的距離,用的也是padding
			如果想要調整邊框和內容的距離,用的也是padding
				簡寫:padding的教值的個數
				padding-20px;表示4個都是20px
				padding:10px 20px;表示上下是10左右是20px
				簡寫:padding的教值的個數
				padding-20px;表示4個都是20px
				padding:10px 20px;表示上下是10左右是20px
				padding:10px 20px 30px;上是10px左右是20px下是30pxL padding:10px 20px 30px 40px,上10px右20下30左40
	邊框border
	
		邊框的寬度border-width
		邊框的顏色border-color
		邊框的線型border-style(實線solid 虛線dashed 雙線double 點狀線dotted)
		簡寫border.20px solid red;
		邊框寫三角形
				寫一個箭頭朝左的三角形
				div:boder-top:30pmx solid transparent;
			 	border-bottom : 30px sold transparent; border-left:30px solid transparent; border-right:30px solid red; width :0;}
			 	
	盒模型:
		盒子模型的組成部分
		content內容  padding內邊距 border邊框 margin外邊距

五,單行本文溢位顯示省略號和元素型別

1.單行文字溢位顯示省略號
		1)	width:200px;
		2) 溢位屬性overflow:hidden;
				預設值:visible
				auto,	scroll, inherit
				分開:overflow-x和overflow-y
		3) 空餘空間white-space:nowrap;
				pre可以識別空格和回車,不會換行
				pre-line不可以識別空格,但是識別回車,且換行
		4)省略號的屬性text-overflow:ellipsis;
			  預設值:clip
2.元素型別
		1)依據css的顯示分類
			塊元素:
				豎著排列
				可以設定寬高,形狀為矩形
				可以作為其他元素的容器
				例如:div li p h1-h6 ol li form
			行內(內聯)元素
				橫著排列
				設定寬高不生效
				對於盒模型的屬性的個別屬性值不生效margin-padding的上下顯示不正確
				例如:i span em a b	strong
			行內塊元素
				既有行內元素的特點又有塊元素的特點
				例如:img input
				行內塊中的img和文字一起排列的時候,圖片對於文字基線對齊
				input和文字一起排列的時候	,input相對於文字居中對齊
				垂直對齊方式:vertical-align:
					預設值:baseline
					居中:middle
					top:實際是相對與文字行高的頂端對齊
					bottom:實際是相對與文字行高的低端對齊
					這個屬性會受到line-heright的影響
			元素巢狀規則
				塊元素可以隨意去巢狀其他的元素型別,但是塊元素有幾個比較特殊,p標籤不能巢狀自己,p也不能包含其他的塊元素,和h1-h6之間不可以互相包含,並且自己不能包自己
				預設情況瞎,行內元素不要巢狀塊元素,行內塊元素
3.元素型別的分類
	置換元素(替換元素)
		1)元素的實際顯示結果,是瀏覽器根據html的屬性或者標籤來決定的
		2)這類元素一般預設有一定的寬度和高度,或者其他的樣式(比如邊框)
		例如:img  input  textarea  object  select
	非置換元素(非替換元素)
		除了置換元素之外都是非置換元素
4.元素型別轉換的屬性 display	
		屬性值有18個
		常用的 display:block;(inline,inline-block,none)
		li預設的display的值是list-item
5.圖片撐大三畫素相容
		給圖片新增:display:block;
		給圖片新增:vertical-align:top;

六.寬高自適應和瀏覽器相容

	1.寬高的自適應:用的單位%如果撐滿是100%
		1)高度的自適應:用的單位可以是%,高度不寫,height:auto;
		2)如果高度不寫,這個時候父元素會有一些問題
				子元素浮動後,父元素高度會塌陷(清除浮動的方法)
					給父元素新增固定的高度,缺點:不適合自適應的佈局
					給父元素新增overflow:hidden/auto/scroll;,和zoom1 缺點:如果遇到定位定出去的時候,就不太適合了
					給所有的浮動元素新增一個空盒子,並且新增生命==宣告clear:both; height:0;overflow:hidden;缺點:造成程式碼冗餘	
					設定萬能清楚法
					:after{content:""; display:block; height:0; clear:both; overflow:hidden; visibility:hidden;}
					zoom:1;
						偽元素選擇器的權重是1
							:after和content
							:before和content
							:first-letter 第一個字元 只能用於塊元素
							:first-line 第一行 只能用於塊元素
							:selection選中之後的樣式  背景顏色和字型顏色
						給父元素新增浮動,沒有優點
						給父元素新增display:table;轉成表格
		3)自適應的時候,可以一些min-height或者max-height,min-width max-width
				min-height對於ie6不相容
					最小高度的相容寫法
						1.min-height:200px;_height:200px;
						2.min-height:200px;height:auto!important;height:200px;順序不能亂
						
		4)過濾器
				_下劃線的過濾器
				!important過濾器
				\9過濾器
				\0過濾器
				+或者*過濾器
				:root過濾器
	****用height寫百分比的時候,注意點:給html和body同時新增height:100%;****
	2.瀏覽器的相容
		1)5大瀏覽器的核心和帶博愛作品
				Trident 核心 MSHTML ie核心  代表作品IE,遨遊
				Gecko  核心 代表作品 火狐
				Webkit核心  代表作品 谷歌和蘋果瀏覽器
				Blink核心  代表作品最新的谷歌和歐朋
				Presto 核心 代表作品 歐朋
		2)常見的相容問題和解決方法
				圖片撐大3畫素 hack:img{display:block;或者vertical-align:top;}
				圖片橫著排列的時候,水平之間有空隙 hack:浮動
				圖片新增a後,再IE上有邊框hack:img{border:0;}
				圖片格式png24在IE6上有背景色,hack:把格式轉成png8
		3)  表單相關的相容
				表單元素就頂部間距不一致 hack:input{float:left}
				表單按鈕樣式u不一樣 hack:用a模擬或者如果按鈕是圖片,用背景圖寫
				表單裡面輸入的文字不一樣,在IE上文字靠上對齊,hack:line-height;
				表單去除自帶的邊框,不要用border:none;hack:border:0;
		4)其他的相容
				margin-top的相容
					hack1:給父元素新增上邊框
					hack2:給父元素新增overflow:hidden;
					hack3:給父元素或者子元素新增浮動
					hack4:給換成padding
					滑鼠變小手cursor:hand;但是隻能IE9以下 hack:cursor:pointer;

七.定位,錨點,透明

1.定位
	預設值:position:static;
	相對定位:position:relative;    不脫離文件流        參照物:自己原來的位置    層疊順序:沒有設定z-index的時候,後寫在上面
	絕對定位:position:absolute; 	 脫離文件流      	參照物:最近的帶有relative的父元素,預設相對與瀏覽器
	固定定位:position:fixed;       脫離                參照物:瀏覽器視窗     
	粘性定位:poition:sticky;       不脫離文件流
	包含塊概念;給決對定位的父元素新增相對定位,那麼這個父元素就是包含塊。
2.實現一個元素水平垂直居中
	1)position:absolute/fixed;    margin:auto ;上下左右"0"	
3.錨點
	作用:同一片頁面內不同位置跳轉
	用法:<a href="#id的名字"></a>
			   <div  id=“box”></div>
4.透明
	opacity:0; 或者1
	IE的相容寫法fitter:alpha(opacity=0-100);
	顯示隱藏:
		display:none;隱藏,徹底隱藏內容和位置都不在,顯示到隱藏中間沒有過程
		opacity:0;隱藏,內容不在但是位置還在,可以看到過程,可以搭配過渡動畫

八.圖片整合

	優點:1.減少伺服器的請求次數,提高頁面的載入速度
		  2.減少圖片的體積
	圖片整合過程中的主要應用的是
				background-position:
	其他名稱:css精靈圖,雪碧圖