推薦的定位放式的優先順序
優先順序最高:id
優先順序其次:name
優先順序再次:css selector
優先順序再次:xpath
針對css selector和xpath的優先順序做乙個簡單的說明
在專案中我們可能用的最多的是css或者xpath,那麼針對這兩種,我們優先選擇css,原因為:
1、css是配合html來工作,它實現的原理是匹配物件的原理,而xpath是配合xml工作的,它實現的原理是遍歷的原理,所以兩者在設計上,css效能更優秀
2、語言簡潔,明了,相對xpath
3、前端開發主要是css,不使用xpath,所以在技術上面,我們可以獲得幫助的機會會非常多
定位元素的注意事項:
1、找到待定元素的唯一屬性
2、如果該元素沒有唯一屬性,則先找到能被唯一定位到的父元素/子元素/相鄰元素,再使用">" " " 「,」 "+"等進行輔助定位
3、不要使用隨機唯一屬性定位
4、最重要的是多跟研發溝通,盡量把關鍵元素加上id或者name,並減少不合理的頁面元素,例如重複id這樣的事情最好不要發生
id選擇器:
id選擇器可以選中具有特定id的html元素
css中id選擇器以」#「來定義
以下的樣式規則應用於元素屬性id=」para1「:
#para1
class選擇器:
class選擇器可以選中具有特定class屬性的html元素
在css中,class選擇器以"."號來定義
在一下的例子中,所有擁有class屬性為center的html元素均為居中
.center
標籤選擇器:
標籤選擇器可以選中同型別的html標籤元素
在以下的例子中,將所有的p標籤設定為紅色
p.組合選擇符
在css3中包含了四種組合放式:
後代選擇器:
以下將選中id為abc的元素中的所有li元素
#abc li
後代選擇器用於選取某個元素的後代元素,無論層級有多深
以下例項將
元素中所有的p元素背景修改為黃色:
div p
子元素選擇器:
與後代選擇器相比,子元素選擇器只能選擇其父元素的子元素
#abc > ul > li
與後代選擇器相比,子元素選擇器只能選擇其父元素的子元素
一下例項選擇了
元素中所有直接子元素
:div>p
相鄰兄弟選擇器:
相鄰兄弟選擇器可選擇緊接在另一元素後的元素,且二者有相同父元素
以下例項選取了所有位於
元素後的第乙個
元素:div+p
後續兄弟選擇器:
後續兄弟選擇器選取所有指定元素之後的相鄰兄弟元素
以下例項選取了所有位於
元素後的所有相鄰兄弟元素
:div~p
偽類:nth-child(n):匹配屬於父元素的第n個子元素
nth-last-child(n):如字面意思:倒數第幾個標籤
nth-of-type(n):第n個指定型別的標籤
first-chils:第乙個標籤
CSS 高階語法
你可以對選擇器進行分組,這樣,被分組的選擇器就可以分享相同的宣告。用逗號將需要分組的選擇器分開。在下面的例子中,我們對所有的標題元素進行了分組。所有的標題元素都是綠色的。h1,h2,h3,h4,h5,h6 根據 css,子元素從父元素繼承屬性。但是它並不總是按此方式工作。看看下面這條規則 body根...
CSS 高階語法
你可以對選擇器進行分組,這樣,被分組的選擇器就可以分享相同的宣告。用逗號將需要分組的選擇器分開。在下面的例子中,我們對所有的標題元素進行了分組。所有的標題元素都是綠色的。h1,h2,h3,h4,h5,h6根據 css,子元素從父元素繼承屬性。但是它並不總是按此方式工作。看看下面這條規則 body根據...
CSS 高階語法
你可以對選擇器進行分組,這樣,被分組的選擇器就可以分享相同的宣告。用逗號將需要分組的選擇器分開。在下面的例子中,我們對所有的標題元素進行了分組。所有的標題元素都是綠色的。h1,h2,h2,h3,h5,h6 根據 css,子元素從父元素繼承屬性。但是它並不總是按此方式工作。看看下面這條規則 body根...