frameborder=0 attribute is good if you are worried about a client
without CSS support - I don't.
It works just as well even if you are not worried.
BTW, the HTML5 "Living Standard" does not include frameborder as an
attribute for iframe
First, "Living Standard" is an oxymoron if there is one. A document that
may and will change daily without notice and without a real change log
can hardly be a standard, whatever its merits might be.
Second, it describes (well, at least right now), as "suggested
rendering" (i.e., browsers are nor required to obey this, but they do),
the attribute by specifying its effect:
iframe[frameborder=0], iframe[frameborder=no i] { border: none; }
http://www.whatwg.org/specs/web-apps/current-work/multipage/rendering.html#phrasing-content-1
and therefore, by omission, suggests to use CSS
instead.
It suggests that explicitly, at
http://www.whatwg.org/specs/web-apps/current-work/multipage/obsolete.html#non-conforming-features
It also declares the attribute as obsolete, nonconforming, forbidden,
cursed, anathema... oops I made some of that up, but that's the tone.
This, on the other hand, is just some people telling what other people
should do as authors. Like telling them to use their right hand when
typing code, because the left hand is unholy.
None of the arguments against "presentational attributes", arguments
that people keep repeating like repeaters, makes sense in the case of
frameborder. The only one that comes close to making sense is the very
theoretical idea that the attribute mixes presentation with content and
structure. But people who preach against presentational attributes use,
at least in real life, attributes like class="noborder". They are just
as presentational, except that their effect is indirect and more
difficult to see, i.e. they obscure the code more than the
"presentational" attribute does. Using style="border: none" is more
direct, but the style attribute is (for good reasons, actually) frowned
upon by people who write the "standards", and of course it is very much
presentational.
If the development of HTML "standards" were a bit more rational, the
"standards" would say that there are some attributes that are used to
affect rendering, with no other defined meaning, and that such
attributes will not be added any more. And they would add that CSS has a
rich and increasing set of presentational features, please use them,
with the usual CSS caveats.
That said, and due to legacy support, frameborder works.
It does.
border-style:none; is the 'shorthand' property 1-4 border 'style'
values (top, right, bottom, left).
border:none; is the 'shorthand' property for border 'width', 'style'
and 'color' values.
All three above work and you may use your poison.
The frameborder attribute additionally works even when CSS support is
disabled or the CSS file is lost in transmission.