The first thing you should realize is that the id attribute is used for more than just styles. You can use it as an anchor for links to point to as well as uniquely identifying parts of the page for future reference. But if all you're using the id attribute for is to add styles to one specific element, it might seem to make sense to just add those styles inline rather than bothering with a style sheet. But there are some good reasons to still use external (or internal) style sheets. IDs Can be Re-Used Across Pages If you have a standard layout across multiple pages, you might use the id attribute to define certain areas of your page and give them styles with that. If you use inline styles then every time you change the layout, you have to change every page with those styles. If you use an external style sheet, you just need to change it in one place. IDs Take Up Less Space than Inline Styles You can have an id that is only one character long. This would add 6 characters to your HTML (e.g. id="a"). But if you tried to add even the simple color to your HTML as an inline style you're adding 11 characters to the HTML. And most styles, especially on ID'd items, are much longer than color: red;. So a page that is marked up with id attributes will load more quickly than one marked up with inline styles.