Cascading Style Sheets or CSS for short is code that is used to give styling to HTML elements in a webpage. It is usually written in a separate text file that is referenced by an HTML file.
CSS has a different syntax than HTML, it is very easy to understand for beginners but the number of options and configurations available might be a little bit overwhelming, so it is best to start learning the most common and basic styling options such as text color, border colors, and border-radius.
CSS can modify many properties of many elements such as buttons, borders, text, images, and video. This is important because not all images on the web are the same size. With CSS it is easy to define a dynamic image size so that all images scale correctly on your page depending on the user’s device. Justifying and centering text is also made easy. CSS helps you create responsive designs.
What is CSS and why is it used?
CSS is akin to adding paint and exterior details to an automobile. You rarely see a car without a paint job, if ever. In the same way, CSS is used to give color and animations to a webpage. Elements are referenced by an id or class that CSS uses to apply styling to that element.
Elements can also be referenced simply by their tags, thus allowing you to style all div tags universally. CSS is also helpful to ensure that all elements on the webpage are aligned. CSS also helps to keep web pages responsive using a property called Media Queries. Media Queries consult the user’s current viewport width to determine whether or not to apply a CSS property or not.

Can you write CSS in HTML?
Yes. CSS inside HTML is known as inline CSS, it is good for mockup websites or making small changes to see if the property will give the desired functionality. What is most commonly used and standardized, however, is defining CSS styles in a separate file. Then, you can reference that file and have all styles applied to that document. This is so that we can apply a separation of concerns and have all our styling in one file.
What are the benefits of CSS?
The benefits are endless. From displaying animations to displaying a color palette applied to the web page, to defining media queries so that all elements align correctly without mattering what device the user uses to access your page. CSS also has preprocessors available such as SASS. This helps you write much more scalable CSS that can speed up the development process.
What are the limitations of CSS?
CSS is currently limited to defining styles without using functions. They have simply styled declarations that are attached to a referenced element. For that reason, CSS can not perform if/else operations. It cannot also read from other files and much less connect to a database to import styles or something of the sort. CSS is also incapable of accessing other web pages.
What are classes in CSS?
Classes in CSS help define a group of elements that may have some sort of similar styling applied. For example, you may want to define a class for warning buttons or maybe for a warning dialog. CSS classes help you group these elements so that they display the same style. Without CSS classes, it would be necessary to define the property for each element over and over again, which results in inefficient code.
What are the features of CSS?
CSS features range from defining the color of font, size, spacing between paragraphs, and even defining and size columns for a grid-like display. You can write CSS and reuse the same style sheet to define other elements, thus saving you a lot of time.
This also results in faster web page loading, as CSS classes help you define just one styling for a class and then have that applied to all elements. CSS is also easy to understand, but it can give you very powerful control over all elements.
What are the types of selectors in CSS?
Selectors are used by CSS to determine which elements receive which styling. Simple selectors select one element on the page by either its tag name, id assigned, or class assigned to it. You can also use nested selectors such as .class1.class2, this selector will select all elements that have class1 defined as their class but that have class2 inside that element.
You can also use selectors to style children of parent nodes with the following syntax: parent > child. An example of this would be div > p, this will result in selecting all p elements whose parent is a div.
What are div and class in CSS?
Div – an HTML tag that helps define a division in the document. This division can have other divisions inside and so on. It is a helpful tag to group similar elements in a section of the webpage. For example, a navbar may be contained inside a div that contains all navbar components.
Another division may contain the footer of the webpage. At the top level, your webpage should be div’s scaled and sized to fit your content correctly.
Class – One of the most powerful CSS features, it allows you to apply similar styles to many elements at once by only defining the class name. Any element that bears that class name will have those styles applied. You may define styles such as:

Now, any element with the warning class will have its background yellow in color. Remember to use the dot symbol “.” for classes and the hashtag symbol “#” for ids.
How do I select a class in CSS?
Classes in CSS require the HTML to have the CSS class assigned to it, you may use a syntax like this:

In this example, the name warning was given to a div element. In your CSS file, you may now define styles for that element such as:

Now all elements with the class warning attached will have a background color of red.