日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > HTML >内容正文

HTML

HTML-CSS笔记

發布時間:2023/12/20 HTML 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 HTML-CSS笔记 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

HTML5-CSS3

HTML元素的lang屬性

<!DOCTYPE html> <html lang="en"><head><meta charset="UTF-8"><title>Title</title></head><body></body> </html>

html元素是HTML文檔的根元素,一個文檔中只能有一個,其他所有元素都是它的后代元素

w3C標準建議為html元素增加一個lang屬性,作用是

幫助語音合成工具確定要使用的發音

幫助翻譯工具確定要使用的翻譯規則

lang="en"告訴瀏覽器︰這個HTML文檔的語言是英文。

lang="zh"表示這個HTML文檔的語言是中文。

head元素嵌套的元素

1.head元素里面的內容是一些“元數據”(元數據︰描述數據的數據)

一般用于描述網頁的各種信息,比如字符編碼、網頁標題、網頁圖標

2.title元素

網頁的標題

<!DOCTYPE html> <html lang="en"><head><meta charset="UTF-8"><title>京東(JD)</title><link rel="icon" href="https: / /www.jd.com/favicon.ico"><style>h1{color:red;font-size: 50px;}</style></head><body><h1>彭于晏哈哈哈哈哈</h1></body> </html>

3.meta元素

可以用于設置網頁的字符編碼,讓瀏覽器更精準地顯示每一個文字,不設置或者設置錯誤會導致亂碼

—般都使用UTF-8編碼,涵蓋了世界上幾乎所有的文字

在HTML5之前,meta標簽的寫法也是比較復雜的

<meta http-equiv="Conten-Type" content="text/html"; charset="UTF-8">

4.body元素

里面的內容將是你在瀏覽器窗口中看到的東西,也就是網頁的具體內容和結構

5.h元素

表示網頁的標題

h1~h6共規定了6個等級的標題

6.p元素

表示文章中的一個段落( paragraph )

標簽功能相同點功能不同點
p標簽有行間距,默認前后換行不保留空格和換行,字體不變
pre標簽有行間距,默認前后換行保留空格和換行,變為等寬字體

7.strong元素

用于強調某些文本,粗體的顯示效果

8.code元素

用于顯示程序代碼

9.br元素

在不產生一個新段落的情況下進行換行,使用< br/>標簽。

8.hr元素

分割線

9.

<b> 加粗效果

<i> ?斜體效果?

<u> 下劃線效果

HTML文本格式化

標簽描述
<b>定義粗體文本
<big>定義大號字
<em>定義著重文字
<i>定義斜體字
<small>定義小號字
<strong>定義加重語氣
< sub>定義下標字
< sup>定義上標字
<ins>定義插入字
<del>定義刪除字

HTML樣式

style 屬性用于改變HTML元素的樣式。 *background-color屬性為元素定義了背景顏色; font-family定義了文本的字體系列; color 定義了字體顏色; font-size定義了字體尺寸; text-align規定了元素中文本的水平對齊方式。*

要想在網頁中正確地顯示這些預留子符,必須便用子符實體,書寫格式一般有2種

&entity_name;

&#entity_number;

比較常用的有

描述實體名稱實體編號
空格&nbsp ;&#160 ;
<小于號&lt ;&#6O ;
>大于號&gt ;&#62 ;
&和號&amp ;&#38 ;
"雙引號&quot ;&#34 ;
單引號&apos ;&#39 ;
分(cent)&cent ;&#162 ;
鎊[pound)&pound ;&#163 ;
元(yen)&yen ;&#165 ;
歐元(euro)&euro ;&#8364 ;
小節&sect ;&#167 ;
版權(copyright)&copy ;&#169?;
注冊商標&reg ;&#174 ;
商標&trade ;&#8482 ;
×乘號&times ;&#215 ;
÷除號&divide ;&#247 ;

字符實體練習

<body><div title="我是一段‘特殊’的文本"> 我是彭于晏 </div> </body>

常用快捷鍵:

shift + alt + ↑塊移動或行移動
Ctrl+D復制上一行到下一行
Ctrl+/可以把選中的代碼全部注釋掉
shift+F6重命名
shift+F搜索
Alt+F2打開瀏覽器
ctrl+alt+L格式化代碼
shift+tab退格
Ctrl+X刪除行
ctrl+k代碼快速格式化 美觀

span元素的使用

p標簽指一個段落,是塊級元素,span是行內元素,一般單獨修飾文字;

span 標簽可以放在p標簽里,p標簽不應該放在span標簽里;

<head><meta charset="UTF-8"><title>彭于晏</title><style>.text {color: blue;font-size: 30px;}.new-price{color: red;font-size: 30px;}.oid-price {color: aquamarine;text-decoration: line-through;}</style> </head> <body>我是一段文本<span class="text"> 我也是一段文本 </span> <!-- ? 價格的顯示--><P><span class="new-price">¥69</span> ?<span class="oid-price">¥99</span></P> </body>

div元素的使用

<head><meta charset="UTF-8"><title>Title</title><style> ?.box1 {float: left;} ?.box2 {float: right;}</style> </head> <body><div class="box1"><h2>哈哈哈哈哈</h2><P>hahahahaha</P></div> ?<div class="box2"><h2>呵呵呵呵呵呵呵</h2><P>hehhehehehhehe</P></div> </html>

結論1

標簽功能
div定義文檔中的分區或節(division/section)。一般用于用于對大的內容塊設置樣式屬性
span沒有特定的含義,一般用于用于為部分文本設置樣式屬性

ing元素相對路徑

img元素如果只設置了width (或height ),瀏覽器會自動根據圖片寬高比計算出height (或width )

在HTML5規范中,alt是img元素的必要屬性

width、height的默認單位是px,像素

<body><p>本地圖片地址(相對路徑)</p><img src="..\img\03.jpg"alt=""width="300"><!-- alt屬性:當圖片(加載失敗)時 顯示文本 ? --><img src="https://safa" alt="gif圖片"> </body>

常用圖片格式

png: 靜態圖片,支持透明

jpg : 靜態圖片,不支持透明

gif : 動態圖片、靜態圖片,支持透明

<iframe src="https://www.lovestu.com/api/project/cnmapyinqing/obj.php" height="400" frameborder="no" border="0" width="20%"> </iframe> 原文鏈接:https://idealclover.top/archives/617/ 2021新冠實時疫情圖

網站推薦

iconfont 網址查找你想要的小圖標

favicon制作圖標大小

https://html5.tool.webfrontend.dev/ 學習標簽信息

https://www.w3school.com.cn/html/html_css.asp學習HTML

flatuicolors 顏色選擇

<l -- body標簽的bgco1or團性指定背景顏色。--> <!-- <body bgcolor="blue"> --> <l -- body標簽的background屬性指定背景圖片。 --> <body background="images/01.png">

無序列表

標簽英文含義功能
ulunordered lists 的縮寫無序列表的外邊界
lilist item的縮寫列表項
<h2>我的筆記</h2><h3>前端技術的作用?</h3><<ul><li><h4>HTML</h4>結構,決定網頁的結構和內容。(是什么)</li><li><h4>cSS</h4>表現,設定網頁的表現樣式。(什么樣子)</li><li><h4>Javascript</h4>行為,控制網頁的行為。(做什么)</li><hr><!-- 無序列表 --><!-- h3+ul>li*3 --></ul><h3>網站上線流程</h3><ul><li>購買域名</li><li>購買服列器</li><li>網站備案</li><ul><li>需要在規定的背景布前拍照</li><li>需要提交規定的表格及資料</li><li>通過時長略有不同</li></ul></ul><hr>

屬性 屬性值

disc(實心圓)

type circle(空心圓)

square(方塊)

?

  • 看書
  • 玩游戲
  • 游泳

?

有序列表

標簽英文含義功能
olordered lists的縮寫有序列表的外邊界
lilist item的縮寫列表項
<!-- 有序列表 --><!-- h3+ol>li*3 --><h3>網站開發流程</h3><ol><li>網站策劃</li><li>網頁設計</li><li>前端開發</li><li>后端開發</li><li>測試上線</li></ol><hr >

自定義列表

標簽英文含義功能
dldefinition lists的縮寫自定義列表的外邊界
dtdefinition term的縮寫列表項中的標題
dddefinition description的縮寫列表項中的內容
<!-- 自定義列表 --><h3>常見問題</h3><dl><dt><b>域名選擇有什么建議嗎?</b></dt><dd>答:盡量選主流域名。比如cn.com. net等;</dd> <dd>域名長度建議控制在8個字符左右,可以使用英文單詞、全拼、簡拼來注冊</dd><dt><b>服務器購買需要注意什么呢?</b></dt><dd>答:建議根據功能需要來選擇配置;</dd><dt><b>網站域名都需要備案嗎?</b></dt><dd>答:使用國內的服務器空間,必須備案。</dd></dl>

表格

標簽英文含義功能
table表格表格的外邊界
trtable row的縮寫定義行
tdtable data cell的縮寫定義單元格
<table border="" cellspacing="" cellpadding=""><tr><th>課程表</th></tr><tr><td>Data</td><td>Data</td><td>Data</td></tr><!-- (tr>td*4)*5 --><tr><!-- 總共幾行 這里是5行 --><td>1</td><!-- 一行有幾個單元格 這里是4個 --><td>2</td><td>3</td><td>4</td></tr>.....</table> ?

table的屬性

屬性名功能常用屬性值
border設置邊框 默認為0 沒有邊框單位為px像素值
cellspacing外邊距,設置單元格與單元格之間的距離單位為px像素值
cellpadding內邊距。設置文字與單元格之間的距離默認1px
width設置表格的寬度單位px,或者百分比
height設置表格高度單位px,或者百分比
align設置表格在網頁中的對齊方式left左 right右 center居中
bgcolor設置背景顏色white red green

表格的合并

標簽功能屬性值
colspan單元格貫穿多少列(橫向合并單元格)數值
rowspan單元格貫穿多少行(縱向合并單元格)數值
<table border="" cellspacing="" cellpadding=""><tr><th>課程表</th></tr><tr><td colspan="2">1</td><td rowspan="3">2</td><td>3</td><td>4</td><td>5</td><td>6</td></tr>...... </table> ?

表格的標題及加粗

標簽功能
th表頭,表格第一行默認加粗
caption表格的標題
<caption><h3>課程表</h3> </caption> <tr><th>1</th><th>2</th><th>3</th><th>4</th> </tr>

form標簽

標簽功能
form定義表單,收集內部控件的信息發送給指定頁面
input定義了文本框及提交按鈕
標簽功能
action定義表單發送的目標地址
method定義表單發送方式
<h3>我的搜索引擎</h3><!-- action:動作 ? ? ? ? ? ? ? ? ? ? ? method:方法 =--><!-- 將數據提交給哪里? ? ? ? ? ? ? ? ? ? 怎么提交? --><form action="https://www.baidu.com/s" method="get"><input type="text" name="wd"/><input type="submit" value="搜索一下"/></form><!-- form表單內的信息才還被提交到服務器 --> 表單提交方式注意事項場合
get表單信息以“明文”方式發送網址長度不能超過2048個字符發送非安全數據
post表單信息包含在HTTP請求正文中,不在網址上顯示。沒有大小限制,可發送大量數據發送敏感信息、個人信息:文件上傳等

get方式提交時,多個數據形成的網址格式為:

目標網址﹖鍵1=值1&鍵2=值2

https : / /www. baidu.com/s?username=abc&password=123#

屬性功能
type控制input控件的交互形式
neme控件向服務器提交信息時的“鍵”名
value控件默認填充的數值
placeholder占位文字,光標聚焦輸入文字時消失
<h3>調查小問卷</h3><!-- #號顯示當前網頁 --><form action="#" method="get"><p>姓名:<input type="text" name="username" placeholder="請輸入用戶名"/></p><p>密碼:<input type="text" name="password" /></p><input type="submit" value="登錄"/></form>

屬性功能
type="radio"單選按鈕,每個選項name相同才有互斥功能
type="checkbox”復選框,每個選項name相同表達多選概念
checked="checked"選項默認選中的狀態
<h3>調查小問卷</h3><!-- #號顯示當前網頁 --><form action="#" method="get"><p>姓名:<input type="text" name="username" placeholder="請輸入用戶名"/></p><p>密碼:<input type="password" name="password" placeholder="請輸入密碼"/></p><p>性別:<input type="radio" name="gender" ?value="1" checked="checked"/>男<input type="radio" name="gender" ?value="0" />女</p><p>愛好:<input type="checkbox" name="hobby" value="read" checked="checked"/>看書<input type="checkbox" name="hobby" value="game"/>游戲<input type="checkbox" name="hobby" value="rum"/>跑步</p><input type="submit" value="提交 "/></form>

input屬性值

input屬性值功能
text定義單行的輸入字段,用戶可在其中輸入文本。默認寬度為20個字符.
password定義密碼字段。該字段中的字符被掩碼。
checkbox定義復選框。
radio定義單選按鈕。
reset定義重置按鈕。重置按鈕會清除表單中的所有數捆。
submit定義提交按鈕。提交按鈕會把表單數據發送到服務器
button定義可點擊按鈕(多數情況下,用于通過JavaScript啟動腳本>
image定義圖像形式的提交按鈕。
file定義輸入字段和“瀏覽"按鈕,供文件上傳。
hidden定義隱藏的輸入字段。
date定義日期輸入框,以及日期選擇控件。
<p>頭像: <input type="file" /></p><p>生日: <input type="date" ?/></p><p><input type="hidden" name="token" ?value="浪海之帆" /></p><input type="button" value="普通按鈕" /><input type="reset" ?value="重置" /><input type="submit" value="提交 "/>

select標簽

標簽功能
select下拉列表框
option選項
屬性功能
multiple="multiple"可以選中多個選項
size="n"窗口可以同時顯示n個選項
selected="selected"option標簽中,被選中的狀態
<p>所在地:<select name="provice" size="3"><option value="bj">北京市</option><option value="fj" selected="selected"> 福建省</option><option value="sc">四川省</option><option value="zj">浙江省</option><option value="gd">廣東省</option></select></p>

textarea標簽

標簽功能
textarea文本區
屬性功能
cols=30列,橫向顯示的字符數
rows=10行,縱向顯示的行數
<p><textarea name="profile" rows="10" cols="30"placeholder="我的愛好還有:">默認的文字</textarea> </p> 標簽功能
fieldset為表單分組
legend為fieldset標簽定義標題
<fieldeset><legend>調查小問卷</legend><form action="#" ?method="get">這里是表單</form> </fieldeset>

塊級、行內級元素概念

塊級元素(blook level element):

獨占父元素一行·

標簽默認帶換行效果的元素,例如:div、p、 pre、h1~h6、ul、ol、li、 dl、 dt、dd、 table、form、article、aside、footer、header、hgroup、main、nav、section、blockquote、 hr等

行級元素(inline oloment,內聯元素):

多個行內級元素可以在父元素的同一行中顯示

標簽默認不帶換行效果的元素,例如:a、img、span、strong、code、iframe、label、input、button、canvas、embed、object、 video,audio等

替換、非替換元素

替換元素(replaced elements )

元素本身沒有實際內容,瀏覽器根據元素的類型和屬性,來決定元素的具體顯示內容比如img、input、 iframe.video、embed、 canvas、audio、object等

非替換元素( non-replaced elements )

和替換元素相反,元素本身是有實際內容的,瀏覽器會直接將其內容顯示出來,而不需要根據元素類型和屬性來判斷到底顯示什么內容

CSS屬性-display-修改元素的顯示類型

CSS中有個display屬性,能修改元素的顯示類型,有4個常用值

block :讓元素顯示為塊級元素

inline :讓元素顯示為行內級元素

none:隱藏元素

inline-block :讓元素同時具備行內級、塊級元素的特征

display:1.block-(瀏覽器默認給div/p/h1..元素設置了display :block)2.inline·(將block元素轉回到行內元素)3.none -(隱藏元素,不占據空間)4.inline-block...可以和其他元素在同一行顯示display:1.block-(瀏覽器默認給div/p/h1..元素設置了display :block)2.inline·(將block元素轉回到行內元素)3.none -(隱藏元素,不占據空間)4.inline-block... 可以和其他元素在同一行顯示可以設置寬度和高度 div,p,h1{background-color: red;width: 200px;height: 50px;display: inline-block; }

display的以下取值,等同于某些HTML元素

table : <table> ,—個block-level表格

inline-table : <table> ,一個inline-level表格table-row : <tr>

table-row-group : <tbody>

table-header-group : <thead>

table-footer-group : <tfoot>

table-cell : <td>、 <th> ,一個單元格

table-caption : <caption> ,表格的標題

list-item : <li>

CSS屬性-visibility-控制元素的可見性

visibility,能控制元素的可見性,有2個常用值

visible :顯示元素

hidden:隱藏元素

visibility: hidden;和display: none;的區別

visibility: hidden;

雖然元素看不見了,但元素的框依l舊還留著,還會占著原來的位置

display: none;

不僅元素看不見了,而且元素的框也會被移除,不會占著任何位置

CSS屬性-overflow-控制內容溢出時的行為

overflow用于控制內容溢出時的行為

visible :溢出的內容照樣可見

hidden :溢出的內容直接裁剪

scroll:溢出的內容被裁剪,但可以通過滾動機制查看

會—直顯示滾動條區域,滾動條區域占用的空間屬于width、height

auto :自動根據內容是否溢出來決定是否提供滾動機制

還有overflow-x、overflow-y兩個屬性,可以分別設置水平垂直方向

(建議還是直接使用overflow,因為目前overflow-x、overflow-y還沒有成為標準,瀏覽器可能不支持)

CSS屬性-盒子模型

HTML中的每一個元素都可以看做是一個盒子,如右下圖所示,可以具備這4個屬性

內容( content )

盒子里面裝的東西

內邊距( padding )

盒子邊緣和里面裝的東西之間的間距

邊框( border )

就是盒子的邊框,邊緣部分

外邊距( margin )

盒子和其他盒子之間的間距

內容相關屬性

width :寬度 min-width:最小寬度,無論內容多少,寬度都大于或等于min-width

max-width:最大寬度,無論內容多少,寬度都小于或等于max-width height:高度 min-height :最小高度,無論內容多少,高度都大于或等于min-height

max-height :最大高度,無論內容多少,高度都小于或等于max-height

內邊距相關屬性

padding-top: 20px;padding-right: 30px;padding-bottom: 40px;padding-left: 50px;/* 上右下左 這個規律 沒有的值按相反的方向的值默認代替*/pading: 10px 20px 30px 40px ? ?

外邊距相關屬性

margin-left :左外邊距

margin-right:右外邊距

margin-top :上外邊距

margin-bottom :下外邊距

margin : 是margin-top、margin-right、margin-bottom、margin-left的簡寫屬性

上下margin傳遞

margin-top傳遞

如果塊級元素的頂部線和父元素的頂部線重疊,那么這個塊級元素的margin-top值會傳遞給父元素

margin-bottom傳遞

如果塊級元素的底部線和父元素的底部線重疊,并且父元素的高度是auto,那么這個塊級元素的margin-bottom值會傳遞給父元素

如何防止出現傳遞問題?

給父元素設置padding-top\padding-bottom

給父元素設置border

觸發BFC:設置overflow為auto/hidden

BEC: block format context 結界

如何觸發BFC:

浮動可以觸發

設置一個元素的overflow為非visible

hidden、auto、scroll

建議:

margin:一般是用來設置兄弟元素之間的間距

padding:一般是用來設置父子元素之間的間距

上下margin折疊

垂直方向上相鄰的2個margin ( margin-top、margin-bottom )有可能會合并為1個margin,這種現象叫做collapse(折疊)

水平方向上的margin ( margin-left、margin-right )永遠不會折疊 只能上下

折疊后最終值的計算規則

兩個值進行比較,取較大的值

如何防止margin collapse ?

只設置其中一個元素的margin

border邊框相關的屬性

邊框寬度

border-top-width、border-right-width、border-bottom-width、border-left-widthborder-width是上面4個屬性的簡寫屬性

邊框顏色

border-top-color、border-right-color、border-bottom-color、border-left-colorborder-color是上面4個屬性的簡寫屬性

邊框樣式

border-top-style、border-right-style、border-bottom-style、border-left-styleborder-style是上面4個屬性的簡寫屬性

border邊框樣式的取值

none :沒有邊框,邊框顏色、邊框寬度會被忽略

dotted :邊框是一系列的點

dashed :邊框是一條虛線

solid :邊框是一條實線(常用)

double :邊框有兩條實線。兩條線寬和其中的空白的寬度之和等于border-width的值

groove :邊框看上去好象是雕刻在畫布之內

ridge : 和grove相反,邊框看上去好像是從畫布中凸出來

inset: 該邊框使整個框看上去好像是嵌在畫布中

outset : 和inset相反,該邊框使整個框看上去好象是從畫布中凸出來

border實現形狀

border-left-color:transpacent;//透明

transform:rotate(-45deg); // 三角形旋轉

行內非替換元素的注意點

以下屬性對行內非替換元素不起作用

width、height、margin-top、margin-bottom

以下屬性對行內非替換元素的效果比較特殊

padding-top.padding-bottom、上下方向的border

boorder圓角形狀

<!DOCTYPE html> <html><head><meta charset="utf-8"><title></title></head><style>/* body{margin: 0;} *//* 圓角 */.box{width: 200px;height: 200px;background-color: #5eff42;border-top-left-radius: 50px 50px;border-top-right-radius: 50px 50px;border-bottom-left-radius: 50px 50px;border-bottom-right-radius: 50px 50px;}/* 圓形 */.box1{margin-top: 20px;width: 200px;height: 200px;background-color: #7751A5;border-radius: 100px;}</style><body><div class="box"></div><div class="box1"></div></body> </html> ?

CSS屬性-outline-元素的外輪廓

outline表示元素的外輪廓不占用空間 默認顯示在border的外面 outline相關屬性有 outline-width outline-style:取值跟border的樣式一樣,比如solid、dotted等

outline-color outline : outline-width、outline-style、outline-color的簡寫屬性,跟border用法類似 應用實例 去除a元素、input元素的focus輪廓效果

<!DOCTYPE html> <html><head><meta charset="utf-8"><title></title><style>a, input, textarea{outline: none;}</style></head><body><a href="#">百度一下</a><input type="text" /></body> </html>

CSS屬性-box-shadow-陰影

<shadow> = insei? && <length>{2,4}&& <color>?

第1個<length> :水平方向的偏移,正數往右偏移

第2個<length> :垂直方向的偏移,正數往下偏移

第3個<length>:模糊半徑( blur radius )

第4個<length> :延伸距離

<color> :陰影的顏色,如果沒有設置,就跟隨color屬性的顏色

inset:外框陰影變成內框陰影

<!DOCTYPE html> <html><head><meta charset="utf-8"><title></title><style>.box{width: 200px;height: 200px;background-color: #ffffff;border: 2px solid orange;margin: 30px auto;box-shadow: 0px 10px 10px 10px rgba(0,0,0,.2);}</style></head><body><div class="box"></div></body> </html> ?

CSS屬性-text-shadow-文字添加陰影

text-shadow用法類似于box-shadow,用于給文字添加陰影效果

text-shadow同樣適用于::first-line(第一行文字)、:first-letter(第一個字)

盒子尺寸-box-sizing

box-sizing用來設置盒子模型中寬高的行為

content-box:

padding、 border都布置在width、height外邊

border-box:

padding、border都布置在width、height里邊

內容盒子

content-box:·含義是設置寬度和高度時只是指定內容的寬高

border-box:含義是設置寬度和高度時是內容+內邊距+邊框的寬度

box-sizing:border-box 盒子的內減

元素的水平居中顯示

在一些需求中,需要元素在父元素中水平居中顯示(父元素一般都是塊級元素、inline-block )

行內級元素、inline-block元素

水平居中:在父元素中設置text-align: center

塊級元素

水平居中 :margin: 0 auto

CSS屬性-背景

background-image用于設置元素的背景圖片

會蓋在(不是覆蓋)background-color的上面

如果設置了多張圖片

background-image: ur1( "bg001.png"),ur1("bg002.png" ),ur1("bg003.png");

設置的第一張圖片將顯示在最上面,其他圖片按順序層疊在下面

注意:如果設置了背景圖片后,元素沒有具體的寬高,背景圖片是不會顯示出來的

CSS屬性-平鋪

background-repeat用于設置背景圖片是否要平鋪

常見的設值有

repeat:平鋪 no-repeat :不平鋪

repeat-x:只在水平方向平鋪

repeat-y:只在垂直平方向平鋪

平鋪效果

background-repeat:repaat-x

background-repeat:repaat-y

CSS屬性-背景圖片大小

background-size用于設置背景圖片的大小

auto:以背景圖本身大小顯示

cover :縮放背景圖,以完全覆蓋鋪滿元素

contain:縮放背景圖,寬度或者高度鋪滿元素,但是圖片保持寬高比

<percentage> :百分比,相對于背景區

length :具體的大小,比如100px

CSS屬性-背景圖片方向

background-position

水平方向還可以設值:left、 center、right 垂直方向還可以設值: top、center、bottom 如果只設置了1個方向,另一個方向默認是center 比如background-position: 80px;等價于background-position: 80px center;

CSS-sprite-圖片合并

什么是CSS Sprite

是一種CSS圖像合成技術,將各種小圖片合并到一張圖片上,然后利用CSS的背景定位來顯示對應的圖片部分有人翻譯為:CSS雪碧、CSS精靈

使用CSS Sprite的好處

減少網頁的http請求數量,加快網頁響應速度,減輕服務器壓力減小圖片總大小

解決了圖片命名的困擾,只需要針對一張集合的圖片命名

background-positiom: 0 -192px

背景圖居中

background-positiom: center -30px

CSS屬性-背景滾動模式

background-attachment可以設置以下3個值

scroll:背景圖片跟隨元素一起滾動(默認值) 隨著.box的滾動(瀏覽器),·背景一起滾動

local:背景圖片跟隨元素以及元素內容一起滾動 會隨著.box內容時滾動,背景一起滾動

fixed:背景圖片相對于瀏覽器窗口固定 背景是固定的,不會隨著.box的滾動而滾動

CSS屬性-背景相關屬性的簡寫屬性

background是一系列背景相關屬性的簡寫屬性,常用格式是

image position/size repeat attachment color

background-size可以省略,如果不省略,/background-size必須緊跟在background-position的后面其他屬性也都可以省略,而且順序任意

background-image和img的選擇

總結:

img,作為網頁內容的重要組成部分,比如廣告圖片、LOGO圖片、文章配圖、產品圖片

background-image,可有可無。有,能讓網頁更加美觀。無,也不影響用戶獲取完整的網頁內容信息

CSS屬性-cursor-光標

cursor可以設置鼠標指針(光標)在元素上面時的顯`示樣式

cursor常見的設值有 auto:瀏覽器根據上下文決定指針的顯示樣式,比如根據文本和非文本切換指針樣式 default :由操作系統決定,一般就是一個小箭頭 pointer :一只小手,鼠標指針挪動到鏈接上面默認就是這個樣式 text :—條豎線,鼠標指針挪動到文本輸入框上面默認就是這個樣式 none :沒有任何指針顯示在元素上面

標準流(Normal Flow)

默認情況下,元素都是按照normal flow(標準流、常規流、正常流、文檔流【document flow】)進行排布

從左到右、從上到下按順序擺放好

默認情況下,互相之間不存在層疊現象

CSS屬性-position-元素定位

利用position可以對元素進行定位,常用取值有4個

static:靜態定位

1.position屬性的默認值 2.元素按照normal flow布局 3.left 、 right、top、bottom沒有任何作用

relative :相對定位

1.元素按照normal flow布局 2.可以通過left、 right、top. bottom進行定位定位 3.參照對象是元素自己原來的位置

absolute :絕對定位

1.元素脫離normal flow(脫離標準流、脫標) 2.可以通過left、 right、top、 bottom進行定位 3.定位參照對象是最鄰近的定位祖先元素

定位元素( positioned element )position值不為static的元素

fixed :固定定位

脫標元素的特點

可以隨意設置寬高

寬高默認由內容決定

不再受標準流的約束

不再給父元素匯報寬高數據

子絕父相

在絕大數情況下,子元素的絕對定位都是相對于父元素進行定位

如果希望子元素相對于父元素進行定位,又不希望父元素脫標,常用解決方案是:

父元素設置position: relative (讓交元素成為定位元素,而且父元素不脫離標準流)

子元素設置position: absolute

絕對定位技巧

絕對定位元素( absolutely positioned element )

position值為absolute或者fixed的元素

對于絕對定位元素來說

定位參照對象的寬度= left + right + margin-left + margin-right + 絕對定位元素的實際占用寬度

定位參照對象的高度= top + bottom + margin-top + margin-bottom +絕對定位元素的實際占用高度

如果希望絕對定位元素的寬高和定位參照對象一樣,可以給絕對定位元素設置以下屬性left: 0、right: 0、top: 0、 bottom: 0、margin:0

如果希望絕對定位元素在定位參照對象中居中顯示,可以給絕對定位元素設置以下屬性left: 0、 right: 0、top: 0、 bottom: 0、margin: auto

另外,還得設置息體的寬高值(寬高小于定位參照對象的寬高)

/* 1.讓完全占據父元素 */ */ */left: 0;right: 0;top: 0;bottom: 0; background-color: yellow; ? /* 2.讓內容居中 */width: 200px;height: 200px; left: 0;right: 0;top: 0;bottom: 0;margin: auto auto;background-color: yellow; 脫離批準流定位元素絕對定位元素定位參照對象
static-靜態定位××××
relative-相對定位××元素自己原來的位置
absolute-絕對定位最鄰近的定位祖先元素(如果找不到這樣的祖先元素,參照對象是視口)
fixed-固定定位視口

元素的層疊

CSS屬性-z-index-定位元素的層疊順序

z-index屬性用來設置定位元素的層疊順序(僅對定位元素有效)

取值可以是正整數、負整數、o

比較原則

如果是兄弟關系

z-index越大,層疊在越上面

z-index相等,寫在后面的那個元素層疊在上面

如果不是兄弟關系

各自從元素自己以及祖先元素中,找出最鄰近的2個定位元素進行比較

而且這2個定位元素必須有設置z-index的具體數值

層疊關系

標準元素:標準流中的元素是不存在層疊

定位元素:定位元素會層疊到標準流元素的上面

定位元素之間可以z-lIndex 前提:必須是定位元素–非static

浮動元素: float: left / right

標準元素>浮動元素>定位元素

定位方案

在CSS中,有3種常用的方法對元素進行定位、布局

normal flow:標準流、常規流、文檔流

absolute positioning :絕對定位

float:浮動

絕對定位、浮動都會讓元素脫離標準流,以達到靈活布局的效果

CSS屬性-float-浮動

可以通過float屬性讓元素產生浮動效果,float的常用取值

none :不浮動,默認值

left:向左浮動

right:向右浮動

1.浮動的規則一

元素一旦浮動后脫離標準流

朝著向左或向右方向移動,直到自己的邊界緊貼著包含塊(一般是父元素)或者其他浮動元素的邊界為止

定位元素會層疊在浮動元素上面

2.浮動的規則二

浮動元素不能與行內級內容層疊,行內級內容將會被浮動元素推出

比如行內級元素、 inline-block元素、塊級元素的文字內容

利用此特性,可以輕松實現文字環繞功能

3.浮動的規則三

行內級元素、inline-block元素浮動后,其頂部將與所在行的頂部對齊

<!DOCTYPE html> <html><head><meta charset="utf-8"><title></title></head><style>.box{height: 300px;background-color: #f00;}.inner1{float: left;width: 100px;height: 100px;background-color: orange;}.inner2{float: left;/* display: inline-block; */width: 150px;height: 150px;background-color: purple;}</style><body><!-- 三者之間的關系:position :absolute/fixed和float:left/right和display之間的關系現象解釋:1.inner2進行左浮動/右浮動的時候,只會在當前自己行中浮動2.inner1進行左浮動時,inner2在沒有浮動時,inner1會如何排布3.inner1進行左浮動時,inner2在沒有浮動時,但是里面有文本,文本會如何排布4 .inner1進行左浮動時, inner2也進行左浮動,那么innner1和inner2以此在第一行排布5.inner1和inner2都進行浮動,但是父元素沒有設置高度,那么父元素的高度會消失(高度的坍塌)--><div class="box"><div class="inner1"></div><div class="inner2">我是inner2的文本</div></div></body> </html>

4.浮動的規則四

如果元素是向左(右)浮動,浮動元素的左(右)邊界不能超出包含塊的左(右)邊界

5.浮動的規則五

浮動元素之間不能層疊

如果一個元素浮動,另一個浮動元素已經在那個位置了,后浮動的元素將緊貼著前一個浮動元素(左浮找左浮,右浮找右浮)

如果水平方向剩余的空間不夠顯示浮動元素,浮動元素將向下移動,直到有充足的空間為止

6.浮動的規則六

浮動元素的頂端不能超過包含塊的頂端,也不能超過之前所有浮動元素的頂端

布局問題

問題:在進行布局時,同一行多個元素擺放后,設置margin-rlight讓他們之間產生間距,那么最有一個元素設置的margin-right總是多余:

解決辦法一:每一行的最后一個元素,總是加一個class,通過類選擇器去除這個margin-right

解決辦法二:通過偽類選擇器 兼容性問題

解決辦法三:container固定的寬度>.wrap+負margin>很多的item

URl的格式

協議://主機[∶端口]/路徑

例如:

https : // www. bilibili .cot/v/knowledge/

ftp://127.0.0.1:8080/course/lesson1.mp4

超鏈接標簽

標簽功能
a定義超鏈接
屬性功能
href定義超鏈接目標

外部鏈接:鏈接到其他網站的頁面的超鏈接

內部鏈接:鏈接自己網站的其他頁面的超鏈接

target元素-是否在當前標簽頁打開頁面

屬性值功能
target_self在當前標簽頁打開頁面
target_blank在新標簽頁中打開頁面
target_parent在父窗口打開URL
target_top在頂層窗口打開URL
某個frame的name值在某個frame中打開URL
<a href="https://www.bilibili.com/" target="_blank"target="_parent"target="_search"target="_self"target="_top" name="b">百度一下</a>

錨與錨點概念:

錨:就是在文檔中設置位置標記,并給該位置一個名稱,以便引用。

錨點:可以使鏈接指向當前文檔或不同文檔中的指定位置。

實現方式:

通過id定義位置的名稱,通過href=“#id名稱”定位到指定位置。

常見HTTP狀態碼及含義

編碼英文含義
400Bad Request錯誤請求
401Unauthor ized訪問被拒絕
403Forbidden禁止訪問
404Not Found沒有找到文件或目錄
500lnternal Server Error服務器內部錯誤
502Bad Gateway錯誤網關
503Service Unavailable服務不可用
504Gateway Timeout網關超時

meta標簽-針對搜索引擎的關鍵字

標簽功能
meta可提供有關頁面的元信息(meta-information),比如針對搜索引擎的關鍵字、描述信息等
屬性值功能
hamekeywordscontent屬性中定義關鍵字
namedescriptioncontent屬性中定義描述信息

注意:

meta標簽位于head標簽內。

元數據通常以名稱/值對出現。

如果沒有提供name屬性,那么名稱/值對中的名稱會采用http-equiv屬性的值。

<head><meta charset="utf-8"><title>元標簽</title><!-- 提供有關頁面的元信息 --><!-- 設定當前網頁的關鍵字 --><meta name="keywords" content="meta標簽,元標簽,浪海之帆" /><!-- 設定當前網頁的描述信息 --><meta name="description" content="meta元素可提供有關頁面的元信息,浪海之帆是來自福建的團隊 "/> </head> meta的屬性值功能
charset字符集名稱聲明網頁使用的字符集
<meta charset="utf-8"/>

audio標簽-播放音頻

屬性功能
audio播放音頻
source播放音頻源文件位置
屬性功能
autoplay自動播放
controls顯示控制欄
loop循環播放
<h3>音樂:firefly</h3> <audio controls="controls" autoplay="autoplay" ><source src="firefly.mp3"><source src="firefly.ogg">當前瀏覽器不支持audio </audio>

video標簽-播放視頻

標簽功能
video播放視頻
source指定視頻源文件位置和類型
屬性功能
autoplay自動播放
controls顯示控制欄
loop循環播放
<h3>影片:Space</h3><video width="800" height="" controls="controls" autoplay="autoplay"><source src="video/blue.mp4" type="video/mp4"></source><!-- <source src="myvideo.ogv" type="video/ogg"></source> --><!-- <source src="myvideo.webm" type="video/webm"></source> --><!-- Adobe 在2020.12.31日之后不再支持Flash Player --><!-- <object width="" height="" type="application/x-shockwave-flash" data="myvideo.swf"><param name="movie" value="myvideo.swf" /><param name="flashvars" value="autostart=true&amp;file=myvideo.swf" /></object> -->當前瀏覽器不支持 video直接播放,點擊這里下載視頻: <a href="myvideo.webm">下載視頻</a></video>

iframe標簽-創建包含另外一個文檔的內聯框架

標簽功能
iframe創建包含另外一個文檔的內聯框架(即行內框架)
屬性名值功能
src文檔的路徑規定在iframe中顯示文檔的URL
frameborder1 0規定是否顯示框架周圍的的邊框
width像素值 百分比定義iframe的寬度
height像素值 百分比定義iframe的高度
scrollingyes no auto規定是否顯示iframe中顯示滾動條
marginheight像素值定義iframe的頂部和底部的邊距
marginwidth像素值定義iframe的左側和右側的邊距
<body>引入bilibili頁面<!-- 引入bilibili頁面 --><iframe src="https://www.bilibili.com/" width="100%" height="800px" frameborder="no"></iframe></body>

語義標簽

語義標簽:就是根據網頁內容的語義,定義不同的標簽,讓內容的結構更清晰,

有助于開發人員和搜索引擎理解內容間的關系。

標簽功能
header規定文檔或節的頁眉
nav定義導航鏈接
hgroup定義標簽組
article定義文章
section定義文檔中的節
aside定義頁面內容以外的內容
footer定義文檔或節的頁腳
<body> ?<!-- header:定義文檔的頁眉、頭部 --><header>這里是網頁頭部</header> ?<!-- nav:定義導航鏈接的部分 --><nav>這里是導航欄</nav><!-- article:定義文章 新聞、博客等 --><article><hgroup><h3>標題:這里是HTML部分講義</h3><h4>副標題:關于語義標簽</h4></hgroup> ?<p>主體內容:<br>接下來是關于語義標簽的簡介....<br><!-- 亂數講文 -->Lorem ipsum dolor sit amet,<br>consectetur adipisicing elit.<br>Beatae quasi repellendus earum <br>eum officiis numquam ab hic possimus<br>nam ipsam vero dignissimos enim <br>nihil non voluptates quos<br>ex voluptatem consectetur!<br> ?</p></article> ?<!-- aside:定義主體內容之外的內容,側邊 --><div>附加信息:這甲是名詞解釋:什么是"CSS"?</div><!-- 定義文檔或書的頁腳 底部 --><footer>底部信息:這里是版權說明</footer> ? </body>

CSS

什么是CSS ?

CSS的作用是∶可以給網頁中的每一個元素設置樣式(“化妝”、排版布局),讓網頁更加精美

完全沒有使用CSS的網頁:基本就是一堆從上到下、從左到右挨在一起的文字和圖片

CSS的全稱是Cascading Style Sheets,層疊樣式表

常用CSS屬性

文本: color、direction、letter-spacing.word-spacing、line-height、text-align、text-indent、text-transform、text-decoration、white-space

字體: font、font-family、font-style、font-size、font-variant、font-weight

背景: background、background-color、background-image、background-repeat、background-attachment、background-position

盒子模型: width、height、border、margin、padding

列表:list-style

表格: border-collapse

顯示: display、 visibility、overflow、opacity、filter

定位: vertical-align、position、left、top、right、bottom、float、clear

CSS引入內聯(行內)樣式

<body><!---1.內聯(行內)樣式:-inline---><!---<h1 ·style=屬性名:屬性值;屬性名:屬性值;">網頁的標題</h1>1--><h1 style="font-size:50px; color: red;">網頁的標題</h1> <p>網頁的段落</p><a href="#">百度一下</a><div style="font-size: 30px; background-color: aqua;">哈哈哈哈哈</div></body>

CSS引入內部樣式表

<!DOCTYPE html> <html><head><meta charset="utf-8"><title></title><style>/* 選擇器{屬性名:屬性值} *//* 單個選中h1元素 */h1{font-size: 50px;color: red;}div{font-size: 30px;}/* 并集選擇器 */h1,p,a {color: red;}/* 類選擇器 */.red {color: red;}</style></head><body><!--·文檔樣式表:document style sheet·--><!--·開發網頁特性:結構和樣式分離·--><h1>網頁的標題</h1><p>網頁的段落</p><a href="#">百度一下</a><div class="red">哈哈哈哈哈哈</div></body> </html>

CSS引入外部樣式表

CSS代碼保存在擴展名為.css的樣式表中 HTML文件引用擴展名為.css的樣式表,有兩種方式:鏈接式、導入式。 語法: 1、鏈接式 <link type="text/css" rel="styleSheet" href="CSS文件路徑" /> 2、導入式

<style type="text/css"> @import url("css文件路徑"); </style>

<!DOCTYPE html> <html><head><meta charset="utf-8"><title></title><!-- link引入樣式:rel="stylesheet" --><link rel="stylesheet" ?href="./css/style.css"/><!-- import引入 --><style>@import url("./css/style.css");</style></head><body><!-- 外部樣式表 --><h1>網頁的標題</h1><p>網頁的段落</p><a herf="#">百度一下</a><div>哈哈哈哈哈哈</div></body> </html>

鏈接式和導入式的區別

<link> 1、屬于XHTML 2、優先加載CSS文件到頁面 @import 1、屬于CSS2.1 2、先加載HTML結構在加載CSS文件。

四、CSS中的優先級

1、樣式優先級

行內樣式>內部樣式>外部樣式(后兩者是就近原則)

樣式應用方式對比

樣式表優點缺點控制范圍使用情況
行內樣式表書寫方便沒有實現樣式和結構分離控制一個元素(少)較少
內部樣式表部分結構和樣式相分離需要引入控制一個頁面(中)較多
外部樣式表完全實現結構和樣式相分離沒有徹底分離控制整個站點最多

CSS選擇器(selector)

什么是CSS選擇器? 按照一定的規則選出符合條件的元素,為之添加CSS樣式 選擇器的種類繁多,大概可以這么歸類: 通用選擇器( universal selector )

元素選擇器( type selectors )

類選擇器( class selectors )

id選擇器( id selectors ) 屬性選擇器( attribute selectors )

組合( combinators ) 偽類( pseudo-classes )

偽元素( pseudo-elements )

統配選擇器

一般用來給所有元素作一些通用性的設置

比如內邊距、外邊距

參考:http://www.jd.com

效率比較低,盡量不要使用

<head><meta charset="utf-8"><title></title><!-- <style>統配選擇器*{color: red;}</style> --> </head>

常用選擇器種類

<!DOCTYPE html> <html><head><meta charset="utf-8"><title></title><style>/* 選擇器{屬性名:屬性值} *//* 單個選中h1元素 */h1{font-size: 50px;color: red;}div{font-size: 30px;}/* 并集選擇器 */h1,p,a {color: red;}/* 類選擇器 */.red {color: red;}</style></head><body><!--·文檔樣式表:document style sheet·--><!--·開發網頁特性:結構和樣式分離·--><h1>網頁的標題</h1><p>網頁的段落</p><a href="#">百度一下</a><div class="red">哈哈哈哈哈哈</div></body> </html>

類別選擇器

類別選擇器:使用“.類名”,選中指定類別的元素。

注意:同一個元素可以屬于多個類別,可以用空格隔開,樣式同時生效。

效果:相同類別的元素樣式相同,同一個元素可以屬于多個類別,應用多個樣式效果。

/* 類選擇器 */.red {color: red;}.abc{font-size: 30px;background-color: orange;width: 60%}<div class="red abc">哈哈哈哈哈哈</div>

RGB顏色

十六進制表示形式

#rrggbb,每一種顏色取值范圍00~FF,大小寫都可以

#ff0000:紅色,#OOff00∶綠色,#0000ff :藍色,#000000:黑色,#fffff:白色,#fff00∶黃色

例如:#CC6600

CC------->12+12*16=12+192=204

RGB顏色規律

RGB顏色值越大,越靠近白色,越淺色

RGB顏色值越小,越靠近黑色,越深色

RGB顏色值一樣的,一般是灰色

RGBA顏色

RGBA顏色在RGB顏色的基礎上加了個alpha,實現帶有透明度的顏色

rgba(red, green, blue, alpha)

alpha取值范圍是0.0~1.0

0代表完全透明,1代表完全不透明

<body><style > div{width:200px;height: 200px;/* background-color:rgb(255,200,100); *//* background-color: rgba(130,150,54,1); */background-color: #FF0000;}</style><div></div> </body>

文本屬性

1.text-decoration-設置文字的裝飾線

用于設置文字的裝飾線

none :無任何裝飾線

√可以去除a元素默認的下劃線

underline :下劃線

overline : 上劃線

line-through :中劃線(刪除線)

<head><meta charset="utf-8"><title></title><style>a{text-decoration: none;}</style></head><body><a href="#">百度一下</a> </body>

2.letter-word-spacing-間隔

letter-spacing:每個字母間隔

word-spacing: 單詞間隔

3.text-transform-設置文字的大小寫轉換

用于設置文字的大小寫轉換

可以設置以下值

capitalize :將每個單詞的首字符變為大寫

uppercase :將每個單詞的所有字符變為大寫

lowercase :將每個單詞的所有字符變為小寫

none:沒有任何影響

4.text-indent-內容的縮進

text-indent用于設置第一行內容的縮進

text-indent: 2em;剛好是縮進2個文字

em---> 1em*20px=20px

text-indent:1em;

font-size: 20px;

5.text-align-在元素中的水平對齊

text-align可用于設置元素內容在元素中的水平對齊方式常用的值

left : 左對齊

right :右對齊

center : 正中間顯示

justify :兩端對齊

<!DOCTYPE html> <html><head><meta charset="utf-8"><title></title><style>.box1{background-color: #aaffff;text-align: center;}.box2{background-color: #f0f;text-align: center;}.a03{background-color: aqua;text-align: center; }.a04{background-color:purple;width: 200px;display: inline-block;}</style></head><body><div class="box1">哈哈哈哈哈</div><div class="box2"> <img src="./images/按鈕.png" alt="我的世界"></div><div class="a03"><div class="a04">我是div元素</div></div> </body> </html>

文字屬性

1.font-size-決定文字的大小

font-size決定文字的大小

常用的設置

具體數值+單位

比如100px

也可以使用em單位:lem代表100%,2em代表200%,0.5em代表50%

百分比

基于父元素的font-size計算,比如50%表示等于父元素font-size的一半

2.font-family-設置文字的字體名稱

font-family用于設置文字的字體名稱

可以設置1個或者多個字體名稱(從左到右按順序選擇字體,直到找到可用的字體為止)

font-family: consolas;

font-family:“微軟雅黑"",consolas,Symbol,“Microsoft Sans Serif" ;

一般情況下,英文字體只適用于英文,中文字體同時適用于英文和中文

所以,如果希望中英文分別使用不同的字體,應該先將英文字體寫在前面,中文字體寫在后面

3.font-weight-設置文字的粗細(重量)

font-weight用于設置文字的粗細(重量)

100 | 200 [ 300 | 400 | 500 | 600 | 700 | 800 | 900:每一個數字表示一個重量

normal :等于400

bold:等于700

4.font-stlye-設置文字的常規、斜體顯示

font-style用于設置文字的常規、斜體顯示

normal:常規顯示

italic :用字體的斜體顯示 (前提是font-family這種字體本身是支持斜體)

oblique :文本傾斜顯示(讓文字傾斜)

em、i、 cite、address、var、dfn等元素的font-style默認就是italic

5.font-variant-影響小寫字母的顯示形式

font-variant可以影響小寫字母的顯示形式

可以設置的值如下

normal:常規顯示

small-caps :將小寫字母替換為縮小過的大寫字母

6.line-height-設置文本的最小行高

line-height用于設置文本的最小行高

行高可以先簡單理解為一行文字所占據的高度

行高的嚴格定義是︰兩行文字基線( baseline )之間的間距

基線( baseline ) :與小寫字母x最底部對齊的線

頂線( top ) 中線( middle ) 底線( bottom)

注意區分height和line-height的區別

height :元素的整體高度

line-height :元素中每一行文字所占據的高度 (文字的高度+行距)

height=line-height 文字就居中了

font

font是一個縮寫屬性

font-style font-variant font-weight font-size/line-height font-family

font-style、 font-variant、font-weight可以隨意調換順序,也可以省略

font-size、font-family不可以調換順序,不可以省略

<!DOCTYPE html> <html><head><meta charset="utf-8"><title></title><style>div{/* font-size: 30px;font-family: "宋體";font-weight: 700;font-style: italic;line-height: 50px;font-variant: small-caps; */font: 700 italic small-caps 30px/50px "宋體";}</style></head><body><div >這是div元素</div></body> </html>

更多選擇器

屬性選擇器

類型描述
[title^="one"]選擇 title 屬性值以 "one" 開頭的所有元素
[title$="one"]選擇 title 屬性值以 "one" 結尾的所有元素
[title*="one"]選擇 title 屬性值中包含子串 "one" 的所有元素

后代選擇器(最 重要)

div p span{color: red; } 要div元素下有span元素就符合

子選擇器(重要)

div元素里面的直接span子元素(不包括間接子元素)

div > span {color: red; }

相鄰兄弟選擇器

div元素后面緊挨著的p元素(且div、p元素必須是兄弟關系)

div+p {color: red; }<P>文字內容1</P> <div><P>文字內容2</P </div> <P>文字內容3</P> //只有文字內容3符合 <P>文字內容4</P>

全體兄弟選擇器

div元素后面的p元素(且div、p元素必須是兄弟關系)

div~p {color: red; } ? <P>文字內容1</P> <div><P>文字內容2</P </div> <P>文字內容3</P> //文字內容3符合 <P>文字內容4</P> //文字內容4符合

交集選擇器(重要)

div.one {color: red; } ? <div class="one">文字內容1</div>//只有文字內容1符合 <div class="twp">文字內容2</div> <p class="one">文字內容3</p>

所有同時符合3個條件的元素:div元素、class值有one、title屬性值等于test

div.one[title="test"] {color: red; } <div class="one">文字內容1</div> <div class="one" title="test">文字內容2</div>//只有文字內容2符合 <div class="one" title="other">文字內容3</div>

并集選擇器(重要)

所有的div元素+所有class值有one的元素+所有title屬性值等于test的元素

div,.one,[title="test"]{color: red; } <div>文字內容1</div>//文字內容1符合 <span title="test">文字內容2</span>//文字內容2符合 <p class="one">文字內容3</P>//文字內容3符合 ? ? ? ? h1{ color: red;} h2{ color: red;} h3{ color: red;}----------------->h1,h2,h3,h4,h5{ h4{ color: red;} ? ? ? ? ? ? ? ? ? color: red; h5{ color: red;} ? ? ? ? ? ? ? ? }

偽類和偽元素

1.目標和元素狀態偽類

2.動態偽類

1.:link

a:link未訪問的鏈接

a:visited已訪問的鏈接

a:hover鼠標挪動到鏈接上

a:active 激活的鏈接(鼠標在鏈接上長按住未松開)

使用注意:

:hover必須放在:link和:visited后面才能完全生效

:active必須放在:hover后面才能完全生效

所以建議的編寫順序是:link、:visited、:hover、:active

<!DOCTYPE html> <html><head><meta charset="utf-8"><title></title><style> /* 未訪問狀態 */a:link{color: red;}/* 已經訪問過 */a:visited {color: green;}/* 手指(鼠標)放上去 */a:hover {color: blue;}/* 手指點下去,未松手 */a:active{color: orange;}</style></head><body><a href="#">百度一下</a></body> </html>

2.:focus-輸入焦點的元素(能接收鍵盤輸入)

:focus指當前擁有輸入焦點的元素(能接收鍵盤輸入)

文本輸入框一聚焦后,背景就會變紅色

imput:focus{backgroind: red; }

因為鏈接a元素可以被鍵盤的Tab鍵選中聚焦,所以:focus也適用于a元素

input:focus{color: red; } ? a:focus{color: yellow; }

動態偽類編寫順序建議是:link、:visited、:focus、:hover、:active

a:focus{outline: none;//可以讓a元素不被選中 把a元素的焦點去掉 } ? ? <!--tabindex可以調整tab選中元紊的順序·--> <a tabindex="-1" href="#">百度一下</a>

3.結構偽類

1.nth-child(數字)

數字n為全部;偶數:even; 奇數:odd

<!DOCTYPE html> <html><head><meta charset="utf-8"><title></title><style>·/*·交集選揮器:1必須是子元素中第三個元素·*/:nth-child(3){color: red;}</style></head><body><div><p>文字內容1</p><p>文字內容2</p><p>文字內容3</p><p>文字內容4</p><p>文字內容5</p></div></body> </html> ===================================================== <!DOCTYPE html> <html><head><meta charset="utf-8"><title></title><style> /* 交集選擇器:是一個p元素同時作為子元素的第一個元素 */p:nth-child(1){color: red;}/* 后代選擇器:選擇p元素,但是后面是一個空格,選p的后代選擇后代的第一個元素 */p :nth-child(1){color: blue;}</style></head><body><div><p>文字內容1</p><p>文字內容2</p><p>文字內容3</p><p>文字內容4</p><p>文字內容5</p></div><p><strong>文字內容1</strong></p></body> </html> ?

2.:nth-last-child(數字)

:nth-last-child()的語法跟:nth-child()類似,

不同點是:nth-last-child()從最后一個子元素開始往前計數

: nth-last-child(1),代表倒數第一個子元素

:nth-last-child( -n + 2),代表最后2個子元素

3.:nth-of-type(數字)

:nth-of-type()用法跟:nth-child()類似,

不同點是:nth-of-type()計數時只計算同種類型的元素

4.相關性

:first-child,等同于:nth-child(1)

: last-child,等同于:nth-last-child(1)

:first-of-type,等同于:nth-of-type(1)

:last-of-type,等同于:nth-last-of-type( 1)

:only-child,是父元素中唯一的子元素

:only-of-type,是父元素中唯─的這種類型的子元素

:root,根元素,就是HTML元素

5.:empty

: empty代表里面完全空白的元素

:empty {width: 100px;height: 20px;background: red; }

4.否定偽類

: not()的格式是:not(×)是一個簡單選擇器

元素選擇器、通用選擇器、屬性選擇器、類選擇器、id選擇器、偽類(除否定偽類)

:not(×)表示除x以為的元素

:not()支持簡單選擇器,不支持組合。比如下面的寫法是不支持的

:not(div.one){color: red; }

5.偽元素

常用的偽元素有

:first-line、: :first-line

:first-letter、: :first-letter

: before、 : :before

:after. : : after

為了區分偽元素和偽類,建議偽元素使用2個冒號,比如::first-line

1.: : first-line-首行文本設置屬性

: : first-line可以針對首行文本設置屬性

只有下列屬性可以應用在::first-line偽元素

字體屬性、顏色屬性、背景屬性

word-spacing、letter-spacing、text-decoration、text-transform、line-height

2.: :first-letter-針對首字母設置屬性

: :first-letter可以針對首字母設置屬性

只有下列屬性可以應用在::first-letter偽元素

字體屬性、margin屬性、 padding屬性、 border屬性、顏色屬性、背景屬性

text-decoration、text-transform、letter-spacing、word-spacing (適當的時候)、line-height、float、vertical-align(只有當float是none時)

3.: : before和: :after-內容之前或之后插入其他內容

: : before和: :after用來在一個元素的內容之前或之后插入其他內容(可以是文字、圖片)

在CSS屬性值中,使用ur1(圖片的URL)來引用圖片ur1(dot.png); ur1( ' dot.png ' );

<head><style> div {color: red;}/* 在元素前面插入內容 */div::before{content: "before";font-size: 40px;}/* 在元素后面插入圖片 */div::after{content: url(./images/按鈕.png);}</style> </head> <body><div>原來的一段文字</div> </body>

總結

以上是生活随笔為你收集整理的HTML-CSS笔记的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。