พื้นฐาน ⤢ typeทุก element ที่ใช้แท็กนั้น button { } ⤢ .classelement ที่มี class นั้น .active { } ⤢ #idelement เดียวที่มี id นั้น #header { } ⤢ *ทุก element * { box-sizing: border-box; } ⤢ :rootรากของเอกสาร ตำแหน่งมาตรฐานสำหรับ custom property ระดับโกลบอล :root { --gap: 1rem; } ⤢ A, Belement ที่เข้ากับ A หรือ B (การจัดกลุ่ม) h1, h2, h3 { } Combinator ⤢ A BB ใดก็ได้ที่เป็นลูกหลานของ A nav a { } ⤢ A > BB ที่เป็นลูกโดยตรงของ A ul > li { } ⤢ A + BB ที่อยู่ถัดจาก A ทันที โดยมี parent เดียวกัน h1 + p { } ⤢ A ~ Bทุก B ที่อยู่หลัง A โดยมี parent เดียวกัน h1 ~ p { } Pseudo-class (สถานะ) ⤢ :hoverelement ในขณะที่ตัวชี้อยู่เหนือมัน a:hover { } ⤢ :focuselement ที่ได้รับโฟกัสจากคีย์บอร์ด input:focus { } ⤢ :first-childelement ที่เป็นลูกตัวแรกของ parent li:first-child { } ⤢ :nth-child(n)ลูกตัวที่ n รับสูตรอย่าง 2n ได้ tr:nth-child(2n) { } ⤢ :not()element ที่ไม่เข้ากับตัวเลือกภายในใด ๆ รับลิสต์ได้ตั้งแต่ Selectors 4 li:not(:first-child, .skip) { } ⤢ :checkedcheckbox, radio หรือ option ที่ถูกเลือก input:checked { } ⤢ :disabledinput หรือปุ่มที่ถูกปิดใช้งาน button:disabled { } ⤢ :has()parent ที่มี element เข้ากับตัวเลือกภายในอยู่ข้างใน li:has(ul) { } ⤢ :is()ตัวเลือกใดก็ได้ในลิสต์ specificity เท่ากับค่าสูงสุดในลิสต์ :is(ol, ul) li { } ⤢ :where()เหมือน :is() แต่ specificity เป็นศูนย์ :where(ol, ul) li { } ⤢ :focus-visibleโฟกัสที่ควรแสดงวงแหวน มักมาจากคีย์บอร์ด a:focus-visible { } ⤢ :focus-withinelement ที่ตัวมันเองหรือลูกหลานมีโฟกัส form:focus-within { } ⤢ :last-childelement ที่เป็นลูกตัวสุดท้ายของ parent li:last-child { } ⤢ :only-childelement ที่ไม่มีพี่น้อง p:only-child { } ⤢ :nth-of-type(n)พี่น้องตัวที่ n ที่ใช้แท็กเดียวกัน รับสูตรอย่าง 2n ได้ p:nth-of-type(2n) { } ⤢ :first-of-type, :last-of-typeพี่น้องตัวแรกหรือตัวสุดท้ายที่ใช้แท็กเดียวกัน p:first-of-type { } ⤢ :emptyelement ที่ไม่มีลูกและไม่มีข้อความ td:empty { } ⤢ :link, :visitedลิงก์ที่ยังไม่เคยเข้า กับลิงก์ที่เข้าไปแล้ว a:visited { } ⤢ :required, :optionalinput ที่กำหนด required กับ input ที่เป็นทางเลือก input:required { } ⤢ :valid, :invalidinput ที่ค่าผ่านหรือไม่ผ่านกฎการตรวจสอบของมัน input:invalid { } ⤢ :read-onlyinput ที่ผู้ใช้แก้ไขไม่ได้ input:read-only { } ⤢ :targetelement ที่ id ตรงกับส่วน fragment ของ URL #note:target { } ⤢ :defaultoption ที่เลือกไว้ล่วงหน้าหรือปุ่มเริ่มต้นของกลุ่ม input:default { } ⤢ :indeterminatecheckbox ที่สคริปต์ตั้งเป็นสถานะ indeterminate input:indeterminate { } ⤢ :definedelement ในตัวใดก็ได้ หรือ custom element เมื่อถูก register แล้ว my-widget:defined { } ⤢ :lang()element ที่อยู่ในภาษาที่กำหนด p:lang(fr) { } Pseudo-element ⤢ ::beforeโหนดเนื้อหาที่สร้างขึ้นก่อน element label::before { content: ""; } ⤢ ::afterโหนดเนื้อหาที่สร้างขึ้นหลัง element code::after { content: ";"; } ⤢ ::first-letterตัวอักษรแรกของบล็อกข้อความ p::first-letter { } ⤢ ::placeholderข้อความ placeholder ของ input input::placeholder { } ⤢ ::first-lineบรรทัดแรกของบล็อกข้อความ p::first-line { } ⤢ ::selectionข้อความที่ผู้ใช้ไฮไลต์ไว้ ::selection { } ⤢ ::markerจุดนำหน้าหรือเลขกำกับของรายการในลิสต์ li::marker { } ⤢ ::backdropพื้นที่ด้านหลัง element แบบเต็มจอหรือ dialog dialog::backdrop { } ⤢ ::file-selector-buttonปุ่มเรียกดูไฟล์ที่อยู่ภายใน input แบบไฟล์ input::file-selector-button { } ⤢ ::part()ส่วนของ shadow DOM ที่ host เปิดเผยไว้ my-widget::part(header) { } ตัวเลือกแอตทริบิวต์ ⤢ [attr]element ที่มีแอตทริบิวต์นั้น ไม่สนค่า [required] { } ⤢ [attr=val]แอตทริบิวต์มีค่าเท่ากับ val แบบตรงตัว [type="submit"] { } ⤢ [attr^=val]แอตทริบิวต์ขึ้นต้นด้วย val a[href^="https"] { } ⤢ [attr$=val]แอตทริบิวต์ลงท้ายด้วย val a[href$=".pdf"] { } ⤢ [attr*=val]แอตทริบิวต์มี val อยู่ข้างใน a[href*="login"] { } ⤢ [attr~=val]ลิสต์ที่คั่นด้วยช่องว่างและมี val เป็นหนึ่งในค่า [class~="badge"] { } ⤢ [attr|=val]ค่าเท่ากับ val หรือขึ้นต้นด้วย val ตามด้วยเครื่องหมายขีดกลาง [lang|="en"] { }