Bird
Raised Fist0
Selenium Pythontesting~5 mins

CSS selector syntax in Selenium Python - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What is a CSS selector?
A CSS selector is a pattern used to select and style HTML elements on a web page.
Click to reveal answer
beginner
How do you select an element by its ID using CSS selector syntax?
Use the hash symbol (#) followed by the element's ID. For example, #header selects the element with id="header".
Click to reveal answer
beginner
How do you select elements by their class name?
Use a dot (.) followed by the class name. For example, <code>.button</code> selects all elements with class="button".
Click to reveal answer
intermediate
What does the selector div > p select?
It selects all <p> elements that are direct children of a <div> element.
Click to reveal answer
intermediate
How do you select elements with a specific attribute value?
Use square brackets with the attribute and value inside. For example, input[type='text'] selects all <input> elements with type="text".
Click to reveal answer
Which CSS selector selects all elements with class 'menu'?
A.menu
B#menu
Cmenu
D*menu
What does the selector ul li select?
AAll <li> elements inside any <ul>
BOnly direct child <li> elements of <ul>
CAll <ul> elements inside <li>
DAll <li> elements anywhere
How do you select an element with id 'main'?
Amain
B.main
C#main
D*main
What does a[href^='https'] select?
AAll <a> elements with href containing 'https'
BAll <a> elements with href starting with 'https'
CAll <a> elements with href ending with 'https'
DAll <a> elements with href equal to 'https'
Which selector matches all direct child <p> elements of a <div>?
Adiv ~ p
Bdiv p
Cdiv + p
Ddiv > p
Explain how to select elements by ID, class, and attribute using CSS selectors.
Think about the symbols used before the names.
You got /3 concepts.
    Describe the difference between the selectors 'div p' and 'div > p'.
    One selects all nested, the other only immediate children.
    You got /3 concepts.

      Practice

      (1/5)
      1. Which CSS selector will select all elements with the class button?
      easy
      A. .button
      B. #button
      C. button
      D. *button

      Solution

      1. Step 1: Understand class selector syntax

        In CSS, a class selector uses a dot . followed by the class name to select elements with that class.
      2. Step 2: Match the selector to the class button

        The selector .button selects all elements with class button.
      3. Final Answer:

        .button -> Option A
      4. Quick Check:

        Class selector = .classname [OK]
      Hint: Class selectors start with a dot (.) [OK]
      Common Mistakes:
      • Using # for class instead of .
      • Using tag name without dot
      • Using * which is universal selector
      2. Which CSS selector correctly selects an element with the ID main-header?
      easy
      A. *#main-header
      B. .main-header
      C. main-header
      D. #main-header

      Solution

      1. Step 1: Understand ID selector syntax

        ID selectors use a hash # followed by the ID name to select a unique element.
      2. Step 2: Match selector to ID main-header

        The selector #main-header selects the element with ID main-header.
      3. Final Answer:

        #main-header -> Option D
      4. Quick Check:

        ID selector = #idname [OK]
      Hint: ID selectors start with a hash (#) [OK]
      Common Mistakes:
      • Using dot (.) for ID instead of hash (#)
      • Using tag name without prefix
      • Adding * before ID selector unnecessarily
      3. Given this HTML snippet:
      <div class='container'>
        <button id='submit' class='btn primary'>Send</button>
      </div>

      Which CSS selector will select the button element inside the div with class container?
      medium
      A. container > button.primary
      B. div.container button
      C. #submit.container
      D. button#submit .container

      Solution

      1. Step 1: Understand descendant selector

        div.container button selects any button inside a div with class container.
      2. Step 2: Check other options for correctness

        container > button.primary incorrectly targets a <container> tag (missing dot for class selector). #submit.container is invalid because ID and class cannot be combined like that without space. button#submit .container looks for .container inside button#submit, which is wrong.
      3. Final Answer:

        div.container button -> Option B
      4. Quick Check:

        Descendant selector = parent child [OK]
      Hint: Space means descendant, > means direct child [OK]
      Common Mistakes:
      • Confusing descendant and child selectors
      • Combining ID and class without space
      • Wrong order of selectors
      4. You want to select all input elements with attribute type='text'. Which CSS selector is correct?
      medium
      A. All of the above
      B. input[type='text']
      C. input[type="text"]
      D. input[type=text]

      Solution

      1. Step 1: Understand attribute selector syntax

        CSS attribute selectors can use quotes or no quotes around the value. Both input[type=text] and input[type='text'] are valid.
      2. Step 2: Confirm all options are valid

        Using double quotes input[type="text"] is also valid. So all three selectors correctly select input elements with type='text'.
      3. Final Answer:

        All of the above -> Option A
      4. Quick Check:

        Attribute selectors allow quotes or no quotes [OK]
      Hint: Quotes optional in attribute selectors [OK]
      Common Mistakes:
      • Using incorrect attribute syntax
      • Forgetting quotes when value has spaces
      • Using wrong attribute name
      5. You want to select all li elements that are the first child of their parent ul. Which CSS selector should you use?
      hard
      A. ul li:first-child
      B. ul li:first-of-type
      C. ul > li:first-child
      D. li:first-child

      Solution

      1. Step 1: Understand child combinator and pseudo-class

        ul > li:first-child selects li elements that are the first child directly under ul.
      2. Step 2: Compare other options

        ul li:first-child selects any li that is first child of its parent inside any ul descendant (could be nested). li:first-child selects any li that is first child anywhere. ul li:first-of-type selects first li of its type inside ul, but not necessarily first child.
      3. Final Answer:

        ul > li:first-child -> Option C
      4. Quick Check:

        Direct child + first-child pseudo-class = ul > li:first-child [OK]
      Hint: Use > for direct child, :first-child for first element [OK]
      Common Mistakes:
      • Confusing :first-child and :first-of-type
      • Missing direct child combinator >
      • Selecting nested elements unintentionally
      Recommended

      Ready to prove it?

      Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

      10 questions~5 mineasy hard