Thu, 23 May 2013 16:53:37 +0800
Fix lots of broken links...
fantasai@1564 | 1 | <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> |
fantasai@1564 | 2 | <html lang="en"> |
fantasai@1564 | 3 | <head> |
fantasai@1564 | 4 | <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
tantek@1958 | 5 | <title>CSS Style Attributes</title> |
fantasai@4173 | 6 | <link rel="stylesheet" type="text/css" href="../default.css"> |
fantasai@1563 | 7 | |
fantasai@1564 | 8 | <link rel="stylesheet" type="text/css" href="http://www.w3.org/StyleSheets/TR/W3C-ED"> |
fantasai@1563 | 9 | </head> |
fantasai@1563 | 10 | |
fantasai@1564 | 11 | <div class="head"> |
fantasai@1564 | 12 | <!--logo--> |
fantasai@1563 | 13 | |
tantek@1958 | 14 | <h1>CSS Style Attributes</h1> |
fantasai@1563 | 15 | |
fantasai@1564 | 16 | <h2 class="no-num no-toc">[LONGSTATUS] [DATE]</h2> |
fantasai@1564 | 17 | <dl> |
fantasai@1564 | 18 | <dt>This version:</dt> |
tantek@1911 | 19 | <!-- <dd><dd><a href="http://www.w3.org/TR/[YEAR]/WD-css-style-attr-[CDATE]/">http://www.w3.org/TR/[YEAR]/WD-css-style-attr-[CDATE]/</a></dd> --> |
tantek@1911 | 20 | <dd><a href="http://dev.w3.org/csswg/css-style-attr/">http://dev.w3.org/csswg/css-style-attr/</a> |
tantek@1911 | 21 | </dd> |
fantasai@1564 | 22 | <dt>Latest version: |
fantasai@8243 | 23 | <dd><a href="http://www.w3.org/TR/css-style-attr/">http://www.w3.org/TR/css-style-attr/</a> |
fantasai@1564 | 24 | <dt>Previous version: |
tantek@1911 | 25 | <dd><a href="http://www.w3.org/TR/2010/WD-css-style-attr-20100121/">http://www.w3.org/TR/2010/WD-css-style-attr-20100121/</a> |
fantasai@7857 | 26 | <dt>Feedback: |
dbaron@7921 | 27 | <dd><a href="mailto:www-style@w3.org?subject=%5Bcss-style-attr%5D%20feedback">www-style@w3.org</a> |
fantasai@7857 | 28 | with subject line “<kbd>[css-style-attr] <var>… message topic …</var></kbd>” |
fantasai@7857 | 29 | (<a rel="discussion" href="http://lists.w3.org/Archives/Public/www-style/">archives</a>) |
tantek@1911 | 30 | <dt>Editors: |
tantek@1911 | 31 | <dd class="vcard"><a lang="tr" class="fn url" href="http://tantek.com/">Tantek Çelik</a> |
fantasai@1989 | 32 | (<span class="company role url">Invited Expert</span>, |
fantasai@1989 | 33 | formerly <a href="http://www.microsoft.com/">Microsoft Corporation</a>) |
tantek@1911 | 34 | <<a class="email" |
tantek@1911 | 35 | href="mailto:tantek@cs.stanford.edu">tantek@cs.stanford.edu</a>> |
tantek@1911 | 36 | </dd> |
fantasai@1989 | 37 | <dd class="vcard"><a class="fn n url" href="http://fantasai.inkedblade.net/contact"><span class="given-name">Elika</span> <abbr class="additional-name">J.</abbr> <span class="family-name">Etemad</span></a> (<span class="company role">Invited Expert</span>) |
tantek@1911 | 38 | </dd> |
fantasai@1564 | 39 | <dt>Previous Editors: |
tantek@1911 | 40 | <dd class="vcard"><a class="fn url" href="http://www.w3.org/People/Bos/">Bert Bos</a> (<a class="org" href="http://www.w3.org/">W3C</a>), <<a class="email" href="mailto:bert@w3.org">bert@w3.org</a>> |
tantek@1911 | 41 | </dd> |
tantek@1911 | 42 | <dd class="vcard"><span class="fn">Marc Attinasi</span> (<span class="org">AOL/Netscape</span>), <<a class="email" href="mailto:attinasi@netscape.com">attinasi@netscape.com</a>> |
tantek@1911 | 43 | </dd> |
fantasai@1564 | 44 | </dl> |
fantasai@1564 | 45 | <!--begin-copyright--> |
fantasai@1564 | 46 | <p>[Here will be included the file "../copyright.inc"]</p> |
fantasai@1564 | 47 | <!--end-copyright--> |
fantasai@1563 | 48 | |
fantasai@1563 | 49 | <hr title="Separator for header"> |
fantasai@1563 | 50 | </div> |
fantasai@1563 | 51 | |
fantasai@1563 | 52 | <h2 class="no-num no-toc" id="abstract">Abstract</h2> |
fantasai@1563 | 53 | |
tantek@1958 | 54 | <p>Markup languages such as HTML [[HTML401]] and SVG [[SVG11]] provide a style |
fantasai@1655 | 55 | attribute on most elements, to hold inline style information that applies |
fantasai@1624 | 56 | to those elements. One of the possible style sheet languages is CSS. This |
fantasai@1624 | 57 | draft describes the syntax and interpretation of the CSS fragment that can |
tantek@1958 | 58 | be used in such style attributes. |
fantasai@1563 | 59 | |
fantasai@1563 | 60 | <h2 class="no-num no-toc" id="status">Status of this document</h2> |
fantasai@1564 | 61 | <!--status--> |
fantasai@1953 | 62 | <p>For this specification to exit the CR stage, the following conditions |
fantasai@1953 | 63 | shall be met: |
fantasai@1953 | 64 | |
fantasai@1953 | 65 | <ol> |
fantasai@1953 | 66 | <li> |
fantasai@1953 | 67 | <p>There must be at least two interoperable implementations. For the |
fantasai@1953 | 68 | purposes of this criterion, we define the following terms:</p> |
fantasai@1953 | 69 | |
fantasai@1953 | 70 | <dl> |
fantasai@1953 | 71 | <dt>interoperable |
fantasai@1953 | 72 | |
fantasai@1953 | 73 | <dd> |
fantasai@1953 | 74 | <p>passing the respective test case(s) in the <a |
fantasai@1953 | 75 | href="http://www.w3.org/Style/CSS/Test/">CSS test suite</a>, or, if |
fantasai@1953 | 76 | the implementation is not a Web browser, an equivalent test. Every |
fantasai@1953 | 77 | relevant test in the test suite should have an equivalent test created |
fantasai@1953 | 78 | if such a user agent (UA) is to be used to claim interoperability. In |
fantasai@1953 | 79 | addition if such a UA is to be used to claim interoperability, then |
fantasai@1953 | 80 | there must one or more additional UAs which can also pass those |
fantasai@1953 | 81 | equivalent tests in the same way for the purpose of interoperability. |
fantasai@1953 | 82 | The equivalent tests must be made publicly available for the purposes |
fantasai@1953 | 83 | of peer review.</p> |
fantasai@1953 | 84 | |
fantasai@1953 | 85 | <dt>implementation |
fantasai@1953 | 86 | |
fantasai@1953 | 87 | <dd> |
fantasai@1953 | 88 | <p>a user agent which:</p> |
fantasai@1953 | 89 | |
fantasai@1953 | 90 | <ol> |
fantasai@1953 | 91 | <li>implements the specification. |
fantasai@1953 | 92 | |
fantasai@1953 | 93 | <li>is available (i.e. publicly downloadable or available through some |
fantasai@1953 | 94 | other public point of sale mechanism). This is the "show me" |
fantasai@1953 | 95 | requirement. |
fantasai@1953 | 96 | |
fantasai@1953 | 97 | <li>is shipped, or is a "nightly build" (i.e., a development version |
fantasai@1953 | 98 | for the next release), but is not experimental (i.e., a version |
fantasai@1953 | 99 | specifically designed to pass the test suite and not intended for |
fantasai@1953 | 100 | daily usage going forward). |
fantasai@1953 | 101 | </ol> |
fantasai@1953 | 102 | </dl> |
fantasai@1953 | 103 | |
fantasai@1953 | 104 | <li> |
fantasai@1953 | 105 | <p>A minimum of three months of the CR period must elapse. That |
tantek@1958 | 106 | is, this specification will not exit CR before (DATE OF PUBLICATION PLUS THREE MONTHS). When the |
fantasai@1953 | 107 | specification exits CR, an implementation report will be published. At |
fantasai@1953 | 108 | this point, no such report exists.</p> |
fantasai@1953 | 109 | </ol> |
fantasai@1617 | 110 | |
tantek@1958 | 111 | <p>A CSS Style Attributes <a href="http://www.w3.org/Style/CSS/Test/">Test |
fantasai@1617 | 112 | Suite</a> will be developed during the Candidate Recommendation phase of |
tantek@1958 | 113 | this CSS Style Attributes specification. |
fantasai@1563 | 114 | |
fantasai@1564 | 115 | <h2 class="no-num no-toc" id="contents">Table of contents</h2> |
fantasai@1564 | 116 | <!--toc--> |
fantasai@1563 | 117 | |
fantasai@1564 | 118 | <h2 id="intro">Introduction</h2> |
fantasai@1563 | 119 | |
tantek@1958 | 120 | <p>Some document formats have a <dfn>style attribute</dfn> to permit |
fantasai@1610 | 121 | the author to directly apply style information to specific elements |
tantek@1958 | 122 | in documents. If a document format defines a style attribute (whether named 'style' or something else) and the |
fantasai@1624 | 123 | attribute accepts CSS as its value, then this specification defines that |
tantek@1958 | 124 | <dfn>style attribute</dfn>’s syntax and interpretation. |
fantasai@1563 | 125 | |
fantasai@1564 | 126 | <div class="example"> |
fantasai@1564 | 127 | <p>The following example shows the use of the <code>style</code> attribute |
tantek@1911 | 128 | in HTML [[HTML401]]:</p> |
fantasai@1564 | 129 | <pre><p style="<em>color: #090; line-height: 1.2</em>">...</p></pre> |
fantasai@1564 | 130 | </div> |
fantasai@1563 | 131 | |
fantasai@1565 | 132 | <h2 id="conformance">Conformance</h2> |
fantasai@1565 | 133 | |
tantek@1958 | 134 | <p>A document or implementation cannot conform to CSS Style Attributes alone, but can claim conformance to CSS Style Attributes |
fantasai@1571 | 135 | if it satisfies the conformance requirements in this specification when |
tantek@1958 | 136 | implementing CSS together with style attribute handling as defined in a |
tantek@1958 | 137 | document language that has one or more CSS style attributes.</p> |
fantasai@1571 | 138 | |
tantek@1958 | 139 | <p>Conformance to CSS Style Attributes is defined for two |
fantasai@1610 | 140 | classes: |
fantasai@1571 | 141 | <dl> |
fantasai@1571 | 142 | <dt><dfn>document</dfn></dt> |
tantek@1958 | 143 | <dd>A document represented in a document language that defines a style |
fantasai@1571 | 144 | attribute for one or more of its elements. |
fantasai@1571 | 145 | <dt><dfn>interpreter</dfn></dt> |
fantasai@1571 | 146 | <dd>Someone or something that interprets the semantics of a document and |
fantasai@1571 | 147 | its associated style information. |
fantasai@1571 | 148 | (Most CSS <a href="http://www.w3.org/TR/CSS21/conform.html#user-agent">user |
fantasai@1571 | 149 | agents</a> fall under this category.)</dd> |
fantasai@1571 | 150 | </dl> |
fantasai@1571 | 151 | |
fantasai@1565 | 152 | <p>The conformance requirements are expressed with a combination of |
fantasai@1565 | 153 | descriptive assertions and RFC 2119 terminology. The key words "MUST", |
fantasai@1565 | 154 | "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", |
fantasai@1565 | 155 | "RECOMMENDED", "MAY", and "OPTIONAL" in the normative parts of this |
fantasai@1565 | 156 | document are to be interpreted as described in RFC 2119. |
fantasai@1565 | 157 | However, for readability, these words do not appear in all uppercase |
fantasai@1565 | 158 | letters in this specification. All of the text of this specification is |
fantasai@1565 | 159 | normative except sections explicitly marked as non-normative, examples, |
fantasai@1565 | 160 | and notes. [[!RFC2119]]</p> |
fantasai@1565 | 161 | |
fantasai@1565 | 162 | <p>Examples in this specification are introduced with the words "for example" |
fantasai@1565 | 163 | or are set apart from the normative text with <code>class="example"</code>, |
fantasai@1565 | 164 | like this: |
fantasai@1565 | 165 | |
fantasai@1565 | 166 | <div class="example"> |
fantasai@1565 | 167 | <p>This is an example of an informative example.</p> |
fantasai@1565 | 168 | </div> |
fantasai@1565 | 169 | |
fantasai@1565 | 170 | <p>Informative notes begin with the word "Note" and are set apart from the |
fantasai@1565 | 171 | normative text with <code>class="note"</code>, like this: |
fantasai@1565 | 172 | |
fantasai@1565 | 173 | <p class="note">Note, this is an informative note.</p> |
fantasai@1565 | 174 | |
fantasai@1610 | 175 | <h2 id="syntax">Syntax and Parsing</h2> |
fantasai@1610 | 176 | |
tantek@1958 | 177 | <p>The value of the style attribute must match the syntax of the contents of |
fantasai@1610 | 178 | a CSS <a href="http://www.w3.org/TR/CSS21/syndata.html#rule-sets">declaration |
fantasai@1915 | 179 | block</a> (excluding the delimiting braces), whose formal grammar is given |
fantasai@1915 | 180 | below in the terms and conventions of the |
fantasai@1616 | 181 | <a href="http://www.w3.org/TR/CSS21/syndata.html#syntax">CSS core grammar</a>: |
fantasai@1616 | 182 | |
fantasai@1616 | 183 | <pre> |
fantasai@1616 | 184 | declaration-list |
fantasai@1619 | 185 | : S* declaration? [ ';' S* declaration? ]* |
fantasai@1616 | 186 | ; |
fantasai@1616 | 187 | </pre> |
fantasai@1616 | 188 | |
fantasai@1616 | 189 | <p class="note">Note that following the CSS2.1 convention, comment tokens |
fantasai@1616 | 190 | are not shown in the rule above. |
fantasai@1616 | 191 | |
tantek@1958 | 192 | <p>The interpreter must parse the style attribute's value using the |
fantasai@1610 | 193 | same forward-compatible parsing rules that apply to parsing declaration block |
fantasai@1610 | 194 | contents in a normal CSS style sheet. See |
fantasai@1610 | 195 | <a href="http://www.w3.org/TR/CSS21/syndata.html">chapter 4 of the CSS2.1 |
fantasai@1616 | 196 | specification</a> for details. [[!CSS21]] |
fantasai@1610 | 197 | |
fantasai@1610 | 198 | <p class="note">Note that because there is no open brace delimiting the |
tantek@1958 | 199 | declaration list in the CSS style attribute syntax, a close brace |
tantek@1958 | 200 | (<code>}</code>) in the style attribute's value does not terminate the |
fantasai@1610 | 201 | style data: it is merely an invalid token.</p> |
fantasai@1610 | 202 | |
fantasai@1610 | 203 | <h2 id="interpret">Cascading and Interpretation</h2> |
fantasai@1610 | 204 | |
tantek@1958 | 205 | <p>The declarations in a style attribute apply to the element to which |
fantasai@1656 | 206 | the attribute belongs. In the cascade, these declarations are considered |
fantasai@1656 | 207 | to have author origin and a specificity higher than any selector. |
fantasai@1656 | 208 | CSS2.1 <a href="http://www.w3.org/TR/CSS21/cascade.html#specificity">defines</a> |
tantek@1958 | 209 | how style sheets and style attributes are cascaded together. [[!CSS21]] |
tantek@1958 | 210 | Relative URLs in the style data must be resolved relative to the style attribute's element (or to the document if per-element resolution is not |
fantasai@1612 | 211 | defined) when the attribute's value is parsed<!-- so dynamic changes to |
fantasai@1612 | 212 | the base URL don't affect the CSS ~Hixie -->. |
fantasai@1610 | 213 | |
tantek@1958 | 214 | <p>Aside from the differences in cascading, the declarations in a style |
fantasai@1610 | 215 | attribute must be interpreted exactly as if they were given in a CSS |
fantasai@1610 | 216 | style rule that applies to the element. |
fantasai@1610 | 217 | |
fantasai@1610 | 218 | <p>The CSS Working Group strongly recommends that document languages do |
tantek@1958 | 219 | not allow multiple CSS style attributes on a single element. If a document |
tantek@1958 | 220 | language allows multiple CSS style attributes, each must be parsed |
fantasai@1610 | 221 | independently and treated as a separate style rule, the ordering of which |
fantasai@1610 | 222 | should be defined by the document language, else is undefined. |
fantasai@1610 | 223 | |
fantasai@1564 | 224 | <h2 id="ack">Acknowledgments</h2> |
fantasai@1563 | 225 | |
tantek@1912 | 226 | <p>Thanks to feedback from <span class="vcard"><span class="fn">Daniel Glazman</span></span>, <span class="vcard"><span class="fn">Ian Hickson</span></span>, <span class="vcard"><span class="fn n"><span class="given-name">Eric</span> <abbr class="additional-name">A.</abbr> <span class="family-name">Meyer</span></span></span>, |
tantek@1912 | 227 | <span class="vcard"><span class="fn">Björn Höhrmann</span></span>. |
tantek@1912 | 228 | </p> |
fantasai@1563 | 229 | |
fantasai@1564 | 230 | <h2 id="references">References |
fantasai@1563 | 231 | |
fantasai@1564 | 232 | <h3 class="no-num" id="normative-references">Normative references</h3> |
fantasai@1563 | 233 | |
fantasai@1564 | 234 | <!--begin-normative--> |
fantasai@1564 | 235 | <p>[Here will be inserted the file "normative.inc"]</p> |
fantasai@1564 | 236 | <!--end-normative--> |
fantasai@1563 | 237 | |
fantasai@1564 | 238 | <h3 class="no-num" id="informative-references">Informative references</h3> |
fantasai@1563 | 239 | |
fantasai@1564 | 240 | <!--begin-informative--> |
fantasai@1564 | 241 | <p>[Here will be inserted the file "informative.inc"]</p> |
fantasai@1564 | 242 | <!--end-informative--> |
fantasai@1563 | 243 | |
fantasai@1563 | 244 | </body> |
fantasai@1563 | 245 | </html> |
fantasai@1563 | 246 | <!-- Keep this comment at the end of the file |
fantasai@1563 | 247 | Local variables: |
fantasai@1563 | 248 | mode: sgml |
fantasai@1563 | 249 | sgml-declaration:"~/SGML/HTML4.decl" |
fantasai@1563 | 250 | sgml-default-doctype-name:"html" |
fantasai@1563 | 251 | sgml-minimize-attributes:t |
fantasai@1563 | 252 | sgml-nofill-elements:("pre" "style" "br") |
fantasai@1563 | 253 | End: |
fantasai@1563 | 254 | --> |