Start learning with our library of video tutorials taught by experts. Get started
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.
Borders define the outside edge of elements and are usually used to apply a decorative effect to the specific elements. Element borders are usually defined by three properties: style, width, and color. Much like margins and padding, borders can be defined for the top, right, bottom and left sides individually, or defined for the entire element at the same time. Now, border syntax can sometimes be quite verbose, as you can specify width, style, and color for each individual side.
Now because of this, authors typically use border shorthand notation that allows you to set all three border properties at the same time. The important thing to remember about borders is that they do affect the overall width of an element. Border widths begin at the edge of padding widths and then extend outward. It's easy to forget about a one-pixel border on an element, but this is often the culprit for breaking layouts or causing elements to shift unexpectedly. So when authoring CSS, be sure to account for border widths when planning layouts.
Now border width is pretty self- explanatory, but border styles and border colors deserve a closer look. Border styles can be set in one of ten values: none, hidden, dotted, dashed, solid, double, groove, ridge, inset, and outset. None and hidden are very similar, except for when tables come in the play, where there are some certain differences regarding when borders are drawn around table cells. Now solid, dotted, and dashed create a single flat line that's either solid, broken into dots, or broken into dashes.
Although support for border styles is almost complete in browsers, some older browsers don't support the dotted value, resulting in dashed lines when found. The remaining values--double, groove, ridge, inset, and outset--create dimensional line affects that often require width values greater than one. The border-color property allows you to define the color of the border independently of the color of the element's foreground and background. While most border style properties will display the color specified, a few of the 3D- like values, will actually use the color as a highlight value or not at all, depending upon browser implementation.
Most designers use borders for decorative effects, or as a way of providing visual separation between elements. Borders can also be used as a way of creating text rules between blocks of text, and as a way of replacing the default underlines under linked text. A relatively new addition to borders is the border-image property. This allows you to specify an image that will be sliced and then aligned with the elements' corners and repeated or stretched in the middle sections. The syntax is a bit too much to cover in a general overview, and browser support is just now starting to solidify, but this is definitely a technique that should be on your radar as a designer.
Before we move on, I also want to take a moment to discuss the difference between a border and an outline. The outline property has been a part of the CSS specification since CSS 2.0, but it's only very rarely discussed in tutorials. One of the biggest reasons for this is that unlike borders, outlines can only be set on the entire element, not the individual sides, like borders can. You can, however, set width, style, and color just like the border property. One other intriguing difference between borders and outlines is that outlines do not add to the total width of an element.
This rather odd behavior means that outlines will often overlap other elements when they come in contact with them; however, outlines can be set on elements without breaking layouts or causing other elements to shift, making them valuable in those situations. The biggest reason for authors ignoring the outline property, however, is its lack of broad support among browsers. Safari, Opera, and Chrome have supported it for some time, but Firefox's support is still a little bit buggy, and Internet Explorer has only recently supported it.
Still, it's worth mentioning, since it gives you an alternative to using the border property.
Find answers to the most frequently asked questions about CSS Fundamentals.
Here are the FAQs that matched your search "":
Sorry, there are no matches for your search ""—to search again, type in another word or phrase and click search.
Access exercise files from a button right under the course name.
Search within course videos and transcripts, and jump right to the results.
Remove icons showing you already watched videos if you want to start over.
Make the video wide, narrow, full-screen, or pop the player out of the page into its own window.
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.