css復合選擇器有哪幾種,css選擇器標簽不能嵌套?
css選擇器標簽可以嵌套,比如可以在類選擇器里面選擇id的元素,這樣就是選擇器的嵌套。
css元素定位工具?
cssSelector定位,屬于CSS高級等位,它的定位方式,利用選擇器進行的。在CSS 中,選擇器是一種模式,用于選擇需要添加樣式的對象。“CSS” 列指示該屬性是在哪個CSS 版本中定義的。(CSS1、CSS2 還是CSS3。);
下面羅列了一部分的CSS定位方式。看到這么多是否覺得CSS不再簡單,其實不然常用的幾種方式作者已標記,CSS定位是平常使用過程中非常重要的一種方式。它與Xpath定位有諸多類似的地方,但是無論從性能還是語法上來說CSS都是比較有優勢的。
1、一般情況下定位速度要比XPATH快
2、語法比Xpath要簡潔
CSS選擇器權重如何計算?
很古老的話題了
id=100
class=10
tag(標簽)=1
按照這個規律去計算,比如
#qietu div{}
100+1 = 101
.qietu .box{}
10+10=20
可以得出第一個的權重要比第二個要高。另外關于權重的擴展知識面,我推薦了解下BEM命名規則,這個觀念很好,可以從側面杜絕權重問題的產生,還有一個就是提高權重的方法 !important;
dom操作?
文檔對象模型( DOM, Document Object Model )主要用于對HTML和XML文檔的內容進行操作。DOM描繪了一個層次化的節點樹,通過對節點進行操作,實現對文檔內容的添加、刪除、修改、查找等功能。
一、DOM樹
DOM樹有兩種,分別為節點樹和元素樹。
節點樹:把文檔中所有的內容都看成樹上的節點;
元素樹:僅把文檔中的所有標簽看成樹上的節點。
二、DOM常用操作
2.1 查找節點
document.getElementById('id屬性值');
返回擁有指定id的第一個對象的引用
document/element.getElementsByClassName('class屬性值');
返回擁有指定class的對象集合
document/element.getElementsByTagName('標簽名');
返回擁有指定標簽名的對象集合
document.getElementsByName('name屬性值');
返回擁有指定名稱的對象結合
document/element.querySelector('CSS選擇器');
僅返回第一個匹配的元素
document/element.querySelectorAll('CSS選擇器');
返回所有匹配的元素
document.documentElement
獲取頁面中的HTML標簽
document.body
獲取頁面中的BODY標簽
document.all['']
獲取頁面中的所有元素節點的對象集合型
2.2 新建節點
document.createElement('元素名');
創建新的元素節點
document.createAttribute('屬性名');
創建新的屬性節點
document.createTextNode('文本內容');
創建新的文本節點
document.createComment('注釋節點');
創建新的注釋節點
document.createDocumentFragment( );
創建文檔片段節點
2.3 添加新節點
parent.appendChild( element/txt/comment/fragment );
向父節點的最后一個子節點后追加新節點
parent.insertBefore( newChild, existingChild );
向父節點的某個特定子節點之前插入新節點
element.setAttributeNode( attributeName );
給元素增加屬性節點
element.setAttribute( attributeName, attributeValue );
給元素增加指定屬性,并設定屬性值