CSS or cascading style sheets are the rules that guide design, typography, and the layout of a page. It is in fact the instructions for the browser telling it how it should look. CSS is what gives flexibility to your layout, it will provide hierarchy, and makes it possible to update lots of pages at once.
Good typography is rather a simple to figure out, it has to work with the message that the words are giving and with any other typography that is going on on the page. Good typography has good hierarchy, emphasis on important context, and a good relationship to the page. Browsers implemented @fontface CSS property which allows you to link to any font file and out it on a page. The choices for font are/weight/variant/style/size.
ID’s are elements you can have only one of and the page can have only one. When IDs have a #comment in the url the browser find it on the page. Classes on the other hand can use the same class on multiple elements and can use multiple classes on the same element. CSS does not care if it is an ID or class but Java Script does. At the end of the day if you don’t need them don’t use them.
1. Fixed-width- Lack of control
2. Fluid/Liquid- Proportion to the browser window
3. Elastic- width set proportion to a design elements
4. Hybrid- uses fixed and fluid layouts
5. Responsive- uses different stye sheets based on audience
6. Fluid/Elastic Grid- Uses a grid; good for maintain order inside a container
Depending on the file type or size, the link above will help optimize the image.