- From: fantasai <fantasai.lists@inkedblade.net>
- Date: Sat, 18 May 2013 00:12:58 -0700
- To: "www-style@w3.org" <www-style@w3.org>
http://dev.w3.org/csswg/css-fonts/#font-resources # 4. Font Resources The title of this section seems overly-generic; there are other font resources that get used besides ones defined via @font-face, i.e. the local ones on the system. Maybe come up with something more specific to what the section is about? # The @font-face rule allows for linking to fonts that are # automatically activated when needed. Suggest s/activated/retrieved/ since that's really the goal. Local system fonts are also activated when needed, from my perspective. # In terms of the grammar, this specification defines the # following productions: I suggest also prepending here a prose description of the syntax, e.g. | The @font-face rule consists of the @font-face at-keyword | followed by a block of descriptor declarations. # only the last specified value is used, all prior values for # that descriptor are ignored. s/specified value/descriptor declaration/ s/,/;/ (to fix run-on sentence) s/prior values/declarations/ # A given set of @font-face rules define a set of fonts # available to containing documents. I'm not sure what this sentence is saying, but it doesn't make much sense. What's a "given set" of @font-face rules? And since when do CSS style sheets "contain" documents? # Multiple rules can be used to define a family with a large # set of faces. You already said this in the first paragraph of the section. # When font matching is done fonts defined using these rules # are considered before other available fonts on a system. This sentence does make sense. :) # Downloaded fonts are only available to documents that # reference them, the process of Run-on sentence. s/, the/. The/ # This would cause a security leak In order to link this to the previous sentence, I suggest | However, this would cause a security leak Also, I think these two sentences would be better pulled out of the middle of this paragraph and put into a <p class=note> right after it. # User agents which do not understand the @font-face rule # encounter the opening curly bracket and ignore forward # until the closing curly bracket. This at-rule conforms # with the forward-compatible parsing requirement of CSS, # parsers may ignore these rules without error. Any # descriptors that are not recognized or implemented by a # given user agent must be ignored. @font-face rules # require a font-family and src descriptor, if either of # these are missing the @font-face must be ignored. Hm, all kinds of awkward. Try this? | This at-rule follows the forward-compatible parsing | rules of CSS. Like properties in a declaration block, | declarations of any descriptors that are not supported | by the user agent must be ignored. @font-face rules | require a font-family and src descriptor; if either of | these are missing, the @font-face rule is invalid and | must be ignored entirely. I dropped the "User agents which do not understand" sentence because that's generally how all at-rules parse, so I didn't think it was necessary to state. If you want to keep it, I suggest combining it with the next paragraph, something like the following. Note the s/which/that/. ;) | Conforming CSS user agents that do not understand the | @font-face rule will, following the forwards-compatible | parsing rules [CSS21], ignore the entire rule from the | @font-face at-keyword to the closing bracket of the | descriptor block. Similarly, in cases where user agents | have limited platform resources or implement the ability | to disable downloadable font resources, @font-face rules | must simply be ignored, exactly as if they were unsupported; | the behavior of individual descriptors as defined in this | specification should not be altered. http://dev.w3.org/csswg/css-fonts/#font-family-desc # Errors loading font data do not affect font name matching # behavior. Took me awhile to guess what this meant, so maybe add a clarifying phrase? Best I could come up with was | Errors loading font data do not affect font name matching | behavior; the font is still considered to exist if it | fails to load, it is just assumed to have no glyphs. but maybe you can do better. # User agents that apply platform font aliasing rules to # font family names defined via @font-face rules are # considered non-conformant. I have no idea what "platform font aliasing rules" means. If font people are sure to know what it means, then cool. If not, maybe give an example or something. http://dev.w3.org/csswg/css-fonts/#src-desc # It is required, whether the font is downloadable or locally # installed. s/It is required/It is required for the @font-face rule to be valid/ Also, I recommend adding the same "It is required" statement to the font-family descriptor's description. # locally installed font face names locally-installed (hyphen) # [ <uri> [format(<string>#)]? | <font-face-name> ]# s/<uri>/<url>/g; also s/URI/URL/g # As with other URIs in CSS, the URI may be partial, in # which case it is resolved relative to the location of # the style sheet containing the @font-face rule. This is covered in the definition of <url> in css3-values. If you want to keep the sentence nonetheless, please at least s/partial/relative/ for correct URL terminology. # local() can be used Add <code>. # The locally installed <font-face-name> is [...] I recommend | The <font-face-name> argument to the local() notation. *** The following is a substantive issue. *** Also, question: is it treated as a string between the parens (very unusual for CSS) or is it treated as a real functional notation (whitespace is trimmed)? I think it should be the latter, and that the argument should be parsed and handled exactly like a family name in font-family (minus the reserved keyword concerns). I think that would be less confusing. In which case, the wording describing the syntax here should appropriately mirror that of font-family.) *** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *** # Which is used s/Which/Which name/, because I tripped over it and had to reread the previous sentence otherwise. # Since localized fullnames should never match s/should// # A conformant user agent should never load s/should/would/ ~fantasai
Received on Sunday, 19 May 2013 01:37:14 UTC