Trajhenkhetlive: I'm a bit out of practice, but I think basic HTML in it's current iteration supports this.
Basic HTML can't do much of anything (except inform the browser what kind of data a piece of data is supposed to be -
unless the web designer/developer is an idiot who completely ignores the intended use for the tags and instead uses his own CSS classes and Javascript together with completely nonsensical markup - and nowadays it even has the option of saying "this is a video" and "this is an article" rather than just "this is a generic object you likely need a plugin for" and "this is a generic box (ie. div) with arbitrary text and markup, make of it what you will").
CSS (media queries, specifically), on the other hand, can offer different stylesheets depending on how the screen looks (height and/or width, portrait or landscape, colour depth, pixel density ...). 15 years ago, we could already detect whether it is a screen or not (well, depending on what the device reports), might be a printed page.