Since you're asking about web specifically: no, there's no wide consensus on the definition of these terms. Generally, all of those three terms are interchangeable and interchanged, but there are occasionally minor differences in meaning.
By a font, we may understand a collection of symbols whose appearance is given by CSS – that is properties such as
color etc. A typeface is a collection of glyphs of certain design, it can be set using the
font-family property. Font face is, as far as I can tell, a recent term that came to existence in relation to CSS. In comparison, the first two terms are somewhat older – font dating to the 17th century and typeface to the 19th.
In the more professional typographic circles, the definitions seem to be distinct and slightly clearer. As Mark Simonson put it:
You've got a collection of letters, numbers, symbols, etc. that can be
used together to form words, paragraphs, tables, etc.
The physical embodiment of such a collection (whether it's a case of
metal pieces or a computer file) is a font.
When referring to the design of the collection (the way it looks) you
call it a typeface.
A typeface family or font family refers to a related collection of
typefaces or fonts.
See also the whole thread and a related discussion on Typophile.