Start learning with our library of video tutorials taught by experts. Get started

CSS Fundamentals

Basic selector types


From:

CSS Fundamentals

with James Williamson

Video: Basic selector types

Now that we know a little bit more about CSS syntax, I want to take a moment to focus on selectors in a bit more detail. Remember, selectors allow us to tell the browser which elements on the page we want to style. In some cases, you are going to want to apply styles broadly to a number of elements all across your site. In other situations, you are going to want to target a smaller number of elements, or even a single element. Understanding how selectors work will allow you to do just that. The first selector I want to start with is the most basic, the element selector.

Watch this entire course now—plus get access to every course in the library. Each course includes high-quality videos taught by expert instructors.

Become a member
Please wait...
CSS Fundamentals
3h 14m Beginner Sep 26, 2011 Updated Dec 13, 2011

Viewers: in countries Watching now:

This course contains a high-level overview of Cascading Style Sheets, while exploring the basic concepts, terminology, and tools of the language. Beginning with an exploration of CSS syntax, author James Williamson explains how CSS modifies text, borders, backgrounds, and color; demonstrates CSS and HTML integration; and contextualizes the current state of CSS. The course also tours some of the most popular CSS editors and frameworks and lists online tools and resources for further study. This course is for people who want a big-picture overview before taking hands-on courses.

Topics include:
  • Understanding basic selector types
  • Integrating CSS with HTML
  • Examining browser rendering differences
  • Exploring CSS specifications
  • Checking browser support
  • Understanding the box model
  • Adjusting margins and padding
  • Positioning elements
  • Exploring basic layout concepts
  • Understanding media queries
  • Introducing CSS3
  • Using CSS Reset
Subjects:
Web Web Foundations
Software:
CSS
Author:
James Williamson

Basic selector types

Now that we know a little bit more about CSS syntax, I want to take a moment to focus on selectors in a bit more detail. Remember, selectors allow us to tell the browser which elements on the page we want to style. In some cases, you are going to want to apply styles broadly to a number of elements all across your site. In other situations, you are going to want to target a smaller number of elements, or even a single element. Understanding how selectors work will allow you to do just that. The first selector I want to start with is the most basic, the element selector.

Element selectors are global in nature, meaning they are going to affect every element of that type in a style document. You simply need to know what the tag is for a given element in order to style it. Now unlike HTML, we don't need the angle brackets around the tag name, just the tag itself. For example, to style paragraphs, you'd use the p; for heading 1s, you'd use an h1; for unordered lists you'd use an ul, and so on. While these selectors are very efficient, they're also very broad, which is why they are most often used to set global site-wide styles.

Another basic selector type is the class selector. Classes are HTML attributes that can be set on any HTML element. You can name a class anything you want, and you can use it on as many elements, and as many times on the page as you need. As you can imagine, that makes classes pretty popular when it comes to writing CSS. Now here, for example, the browser would look through all the elements on the page and apply styling to any elements with a class attribute of subheading.

Note that classes are identified in CSS by the period in front of their name. Now ID selectors are similar to class selectors in that they represent an HTML attribute. They differ from classes in one very important aspect. IDs must be unique to the page, meaning that if you assign an ID to a page element, no other element on that page may have that specific ID. In this example, the browser would find the element on the page that has the ID attribute of sidebar and then apply the styling.

Now, IDs identified by the octothorpe, or as it is more commonly known, the pound symbol, in front of the ID name. You can also make class and ID selectors element-specific by adding an element to the front of the selector. This limits the styling to only elements with the specific class or specific ID applied to it. For example, here styling would only be applied to heading 2s with a class of subheading, or divs with an ID of sidebar.

This allows you to write a single general class, or ID style, and then follow that with a more focused element-specific style if necessary. Classes and IDs can be anything you want them to be, but you do need a follow some naming conventions. First, don't use any spaces or special characters. Also, remember that they are case sensitive. If you use uppercase letters, you are going to need to remember that when writing the styles for them. Honestly, it doesn't really matter what you practice, as long as you're consistent.

Another type of selector I want to discuss is the descendent selector. Descendent selectors allow you to target an element based on where it's found within another element. You simply string the selectors together, separating them with whitespace. The parent selectors are added first, followed by each successive nested selector. For example, in this example the browser would find any span elements inside of paragraph elements which were also inside of div elements.

Now there isn't any limit as to how many of those that you can string together, but more than three starts to become extremely inefficient. Let's take a look at a couple of examples. Now in this first example, the browser would locate any paragraph found within a div tag and then apply the styling. In the second one, it would find any span element inside of a paragraph which is also inside of a div, and then apply the styling. As you can see, descendent selectors allow you to be extremely specific.

Another thing I want to point out here is that the descendent selectors apply to any nested element, no matter how deep it's found within the page structure. Going back to that first example, it's going to apply to paragraphs inside the div, not just ones that are immediately inside the div. You can also group selectors together by using commas between the selectors themselves. Now this can make writing styles more efficient by grouping selectors together that need the same styling. Instead of writing three separate selectors like this, for example, you can simply write one group selector, and that's a lot more efficient.

Although there are certainly more selector types available than the ones that I've shown here, the overwhelming bulk of your styles will probably be written through the basic selector types that we've covered. Learning how to write efficient selectors based on your document structure is among the most important CSS skills that you can cultivate. By mastering the different types of selectors available, you'll find that you have a much broader set of options for writing effective styles.

Find answers to the most frequently asked questions about CSS Fundamentals.


Expand all | Collapse all
Please wait...
Q: This course was updated on 12/13/2011. Can you tell me what has changed?
A: One movie called "Who is this course for?" was added to provide information on what you can expect to get from the course, depending on your level of familiarity with CSS.
Share a link to this course
Please wait... Please wait...
Upgrade to get access to exercise files.

Exercise files video

How to use exercise files.

Learn by watching, listening, and doing, Exercise files are the same files the author uses in the course, so you can download them and follow along Premium memberships include access to all exercise files in the library.
Upgrade now


Exercise files

Exercise files video

How to use exercise files.

For additional information on downloading and using exercise files, watch our instructional video or read the instructions in the FAQ.

This course includes free exercise files, so you can practice while you watch the course. To access all the exercise files in our library, become a Premium Member.

Upgrade now

Are you sure you want to mark all the videos in this course as unwatched?

This will not affect your course history, your reports, or your certificates of completion for this course.


Mark all as unwatched Cancel

Congratulations

You have completed CSS Fundamentals.

Return to your organization's learning portal to continue training, or close this page.


OK
Become a member to add this course to a playlist

Join today and get unlimited access to the entire library of video courses—and create as many playlists as you like.

Get started

Already a member?

Become a member to like this course.

Join today and get unlimited access to the entire library of video courses.

Get started

Already a member?

Exercise files

Learn by watching, listening, and doing! Exercise files are the same files the author uses in the course, so you can download them and follow along. Exercise files are available with all Premium memberships. Learn more

Get started

Already a Premium member?

Exercise files video

How to use exercise files.

Ask a question

Thanks for contacting us.
You’ll hear from our Customer Service team within 24 hours.

Please enter the text shown below:

The classic layout automatically defaults to the latest Flash Player.

To choose a different player, hold the cursor over your name at the top right of any lynda.com page and choose Site preferencesfrom the dropdown menu.

Continue to classic layout Stay on new layout
Welcome to the redesigned course page.

We’ve moved some things around, and now you can



Exercise files

Access exercise files from a button right under the course name.

Mark videos as unwatched

Remove icons showing you already watched videos if you want to start over.

Control your viewing experience

Make the video wide, narrow, full-screen, or pop the player out of the page into its own window.

Interactive transcripts

Click on text in the transcript to jump to that spot in the video. As the video plays, the relevant spot in the transcript will be highlighted.

Thanks for signing up.

We’ll send you a confirmation email shortly.


Sign up and receive emails about lynda.com and our online training library:

Here’s our privacy policy with more details about how we handle your information.

Keep up with news, tips, and latest courses with emails from lynda.com.

Sign up and receive emails about lynda.com and our online training library:

Here’s our privacy policy with more details about how we handle your information.

   
submit Lightbox submit clicked