HTML (Hyper Text Markup Language) is a widely accepted web-design language.
HTML is responsible for the construction, and the total output, of a page.
CSS (Cascading Style Sheets) is another widely-accepted web-design language.
Unlike HTML, CSS does not "create" anything. Instead, it decorates, aligns, and positions (etc) elements in HTML. In a nutshell, CSS takes the normal HTML output and adds a few rules to how it's actually displayed.