Network Working Group H. Flanagan Internet-Draft RFC Editor Intended status: Informational June 30, 2015 Expires: January 1, 2016 CSS Requirements for RFCs draft-flanagan-rfc-css-00 Abstract While individuals may choose their own Cascading Style Sheet for presenting HTML-formatted RFCs, the default offered by the RFC Editor must meet certain requirements. This draft describes those requirements and is based on the classes defined in draft-hildebrand- html-rfc. Discussion of this draft takes place on the rfc-interest mailing list (rfc-interest@rfc-editor.org), which has its home page at https://www.rfc-editor.org/mailman/listinfo/rfc-interest. Status of This Memo This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet- Drafts is at http://datatracker.ietf.org/drafts/current/. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." This Internet-Draft will expire on January 1, 2016. Copyright Notice Copyright (c) 2015 IETF Trust and the persons identified as the document authors. All rights reserved. This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect Flanagan Expires January 1, 2016 [Page 1] Internet-Draft I-D June 2015 to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License. Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 4 2. Design Goal . . . . . . . . . . . . . . . . . . . . . . . . . 4 3. General Requirements . . . . . . . . . . . . . . . . . . . . 4 4. Page Layout . . . . . . . . . . . . . . . . . . . . . . . . . 4 4.1. Title Page Header . . . . . . . . . . . . . . . . . . . . 4 4.2. Body . . . . . . . . . . . . . . . . . . . . . . . . . . 4 4.3. Font Choices . . . . . . . . . . . . . . . . . . . . . . 5 5. Printing . . . . . . . . . . . . . . . . . . . . . . . . . . 5 6. CSS Classes and Attributes . . . . . . . . . . . . . . . . . 5 6.1. .adr . . . . . . . . . . . . . . . . . . . . . . . . . . 5 6.2. .annotation . . . . . . . . . . . . . . . . . . . . . . . 5 6.3. .anticomma . . . . . . . . . . . . . . . . . . . . . . . 6 6.4. .artwork . . . . . . . . . . . . . . . . . . . . . . . . 6 6.4.1. .art-ascii-art . . . . . . . . . . . . . . . . . . . 6 6.4.2. .art-logo . . . . . . . . . . . . . . . . . . . . . . 6 6.4.3. .art-svg . . . . . . . . . . . . . . . . . . . . . . 6 6.5. .ascii . . . . . . . . . . . . . . . . . . . . . . . . . 6 6.6. .author . . . . . . . . . . . . . . . . . . . . . . . . . 6 6.7. .authors . . . . . . . . . . . . . . . . . . . . . . . . 6 6.8. .bcp14 . . . . . . . . . . . . . . . . . . . . . . . . . 6 6.9. .city . . . . . . . . . . . . . . . . . . . . . . . . . . 6 6.10. .code . . . . . . . . . . . . . . . . . . . . . . . . . . 7 6.11. .comma . . . . . . . . . . . . . . . . . . . . . . . . . 7 6.12. .compact . . . . . . . . . . . . . . . . . . . . . . . . 7 6.13. .country-name . . . . . . . . . . . . . . . . . . . . . . 7 6.14. .cref . . . . . . . . . . . . . . . . . . . . . . . . . . 7 6.15. .crefAnchor . . . . . . . . . . . . . . . . . . . . . . . 7 6.16. .cref-source . . . . . . . . . . . . . . . . . . . . . . 7 6.17. .dlparallel . . . . . . . . . . . . . . . . . . . . . . . 7 6.18. .dlcompact . . . . . . . . . . . . . . . . . . . . . . . 7 6.19. .docinfo . . . . . . . . . . . . . . . . . . . . . . . . 7 6.20. .email . . . . . . . . . . . . . . . . . . . . . . . . . 8 6.21. .eref . . . . . . . . . . . . . . . . . . . . . . . . . . 8 6.22. .finalized . . . . . . . . . . . . . . . . . . . . . . . 8 6.23. .fn . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 6.24. .index . . . . . . . . . . . . . . . . . . . . . . . . . 8 6.25. .indexChar . . . . . . . . . . . . . . . . . . . . . . . 8 6.26. .indexComma . . . . . . . . . . . . . . . . . . . . . . . 8 6.27. .indexIndex . . . . . . . . . . . . . . . . . . . . . . . 8 6.28. .indexItem . . . . . . . . . . . . . . . . . . . . . . . 8 6.29. .indexPrimary . . . . . . . . . . . . . . . . . . . . . . 8 Flanagan Expires January 1, 2016 [Page 2] Internet-Draft I-D June 2015 6.30. indexSubItem . . . . . . . . . . . . . . . . . . . . . . 8 6.31. .initial . . . . . . . . . . . . . . . . . . . . . . . . 9 6.32. .iref . . . . . . . . . . . . . . . . . . . . . . . . . . 9 6.33. .irefItem . . . . . . . . . . . . . . . . . . . . . . . . 9 6.34. .irefRefs . . . . . . . . . . . . . . . . . . . . . . . . 9 6.35. .irefSubItem . . . . . . . . . . . . . . . . . . . . . . 9 6.36. .label . . . . . . . . . . . . . . . . . . . . . . . . . 9 6.37. .locality . . . . . . . . . . . . . . . . . . . . . . . . 9 6.38. .namerole . . . . . . . . . . . . . . . . . . . . . . . . 9 6.39. .note . . . . . . . . . . . . . . . . . . . . . . . . . . 9 6.39.1. .rfceditor-remove . . . . . . . . . . . . . . . . . 9 6.40. .olcompact . . . . . . . . . . . . . . . . . . . . . . . 9 6.41. .olpercent . . . . . . . . . . . . . . . . . . . . . . . 10 6.42. .org . . . . . . . . . . . . . . . . . . . . . . . . . . 10 6.43. .organization . . . . . . . . . . . . . . . . . . . . . . 10 6.44. .pilcrow . . . . . . . . . . . . . . . . . . . . . . . . 10 6.45. .postal-code . . . . . . . . . . . . . . . . . . . . . . 10 6.46. .published . . . . . . . . . . . . . . . . . . . . . . . 10 6.47. .refauthor . . . . . . . . . . . . . . . . . . . . . . . 10 6.48. .refcontent . . . . . . . . . . . . . . . . . . . . . . . 10 6.49. .reference . . . . . . . . . . . . . . . . . . . . . . . 10 6.50. .referencegroup . . . . . . . . . . . . . . . . . . . . . 10 6.51. .region . . . . . . . . . . . . . . . . . . . . . . . . . 10 6.52. .relref . . . . . . . . . . . . . . . . . . . . . . . . . 11 6.53. .rendered . . . . . . . . . . . . . . . . . . . . . . . . 11 6.54. .role . . . . . . . . . . . . . . . . . . . . . . . . . . 11 6.55. .self-ref . . . . . . . . . . . . . . . . . . . . . . . . 11 6.56. .series . . . . . . . . . . . . . . . . . . . . . . . . . 11 6.57. .seriesInfo . . . . . . . . . . . . . . . . . . . . . . . 11 6.58. .sourcecode . . . . . . . . . . . . . . . . . . . . . . . 11 6.58.1. .lang- . . . . . . . . . . . . . . . . . . . . . . . 11 6.59. .status . . . . . . . . . . . . . . . . . . . . . . . . . 11 6.60. .street-address . . . . . . . . . . . . . . . . . . . . . 11 6.61. .surname . . . . . . . . . . . . . . . . . . . . . . . . 11 6.62. .tel . . . . . . . . . . . . . . . . . . . . . . . . . . 12 6.63. .toc . . . . . . . . . . . . . . . . . . . . . . . . . . 12 6.64. .type . . . . . . . . . . . . . . . . . . . . . . . . . . 12 6.65. .ulcompact . . . . . . . . . . . . . . . . . . . . . . . 12 6.66. .url . . . . . . . . . . . . . . . . . . . . . . . . . . 12 6.67. .workgroup . . . . . . . . . . . . . . . . . . . . . . . 12 6.68. .xref . . . . . . . . . . . . . . . . . . . . . . . . . . 12 7. Security Considerations . . . . . . . . . . . . . . . . . . . 12 8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 12 9. Normative References . . . . . . . . . . . . . . . . . . . . 12 Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 13 Flanagan Expires January 1, 2016 [Page 3] Internet-Draft I-D June 2015 1. Introduction The HTML format for RFCs, described in [I-D.hildebrand-html-rfc] assigns style guidance to an RFC Editor-defined Cascading Style Sheet (CSS). This CSS will be embedded in the published HTML, and may be overridden by a locally defined CSS as desired. The embedded, default CSS as included by the RFC Editor is expected to take into account accessibility needs and be built along a responsive design model. This document describes the requirements for the default CSS used by the RFC Editor. The requirements will only be applied to HTML documents published by the RFC Editor as per [I-D.flanagan-rfc-framework]. 2. Design Goal RFCs must be adaptable to a wide variety of devices and displays, accessible to assisted readers, and printable. 3. General Requirements o Support the display of the semantic HTML described in [I-D.hildebrand-html-rfc]. o Follow best practice for accessibility, as defined by the W3C's "Best Practices for Authoring HTML" [HTMLBP]. o Follow best practice for mobile devices, as defined by the W3C's "Best Practices for Authoring HTML." o Allow for a broad range of internationalized scripts. 4. Page Layout 4.1. Title Page Header The document header must be at the top of the page and include all information described in the "Style Guide" and "RFC Streams, Headers, and Boilerplates" [RFC7322] [RFC5741] 4.2. Body The body of the document must conform to the following: o Examples and code blocks must be in a fixed-width font o ASCII art must be in a fixed-width font Flanagan Expires January 1, 2016 [Page 4] Internet-Draft I-D June 2015 o Reflow the text as the screen gets smaller and limit max width o Block quotes must be indented o Tables must allow for distinct header rows o Paragraphs should include a hover-over paragraph identifier 4.3. Font Choices o Default to a sans-serif font family with broad Unicode support for web browser viewing. o Default to a serif font family with broad Unicode support for printing. o A fixed-width font must be used for code and artwork-tagged sections. o All fonts should be publicly licensed and supported by all major web browsers. o Further specification regarding font families TBD 5. Printing The CSS must include support for a printer-friendly output. The print rules should be a part of the embedded style sheet; consumers of an RFC may develop their own print-specific style sheet as desired. 6. CSS Classes and Attributes This section describes the CSS classes specific to RFCs. Basic selectors are not described. 6.1. .adr No visible changes to the text. 6.2. .annotation No visible changes to the text. Flanagan Expires January 1, 2016 [Page 5] Internet-Draft I-D June 2015 6.3. .anticomma No visible changes to the text. 6.4. .artwork These classes will mostly be styled as part of .artwork. Specific classes may include '.art-ascii-art' and '.art-svg'. [HF: TBD - floating or not. 6.4.1. .art-ascii-art Must use a mono-spaced font. 6.4.2. .art-logo No visible changes to the text. Such images are not currently allowed in RFCs. 6.4.3. .art-svg TBD: to allow these images to float in the text? 6.5. .ascii No visible changes to the text. 6.6. .author No visible changes to the text. 6.7. .authors No visible changes to the text. 6.8. .bcp14 This will not result in any special action on the part of the RFC Editor CSS. Local CSS files may choose to highlight or otherwise emphasize keywords identified with this tag. 6.9. .city No visible changes to the text. Flanagan Expires January 1, 2016 [Page 6] Internet-Draft I-D June 2015 6.10. .code Make visually distinct with a box around the code components. 6.11. .comma No visible changes to the text. 6.12. .compact 6.13. .country-name No visible changes to the text. 6.14. .cref A comment within an I-D; should be visually distinct. For I-Ds only; not for RFCs. 6.15. .crefAnchor A comment within an I-D; should be visually distinct. For I-Ds only; not for RFCs. 6.16. .cref-source A comment within an I-D; should be visually distinct. For I-Ds only; not for RFCs. 6.17. .dlparallel TBD 6.18. .dlcompact TBD 6.19. .docinfo No visible changes to the text. Flanagan Expires January 1, 2016 [Page 7] Internet-Draft I-D June 2015 6.20. .email No visible changes to the text. 6.21. .eref Standard link formatting (underlined, change in color). 6.22. .finalized No visible changes to the text. 6.23. .fn No visible changes to the text. 6.24. .index No visible changes to the text. 6.25. .indexChar No visible changes to the text. 6.26. .indexComma No visible changes to the text. 6.27. .indexIndex No visible changes to the text. 6.28. .indexItem No visible changes to the text. 6.29. .indexPrimary No visible changes to the text. 6.30. indexSubItem No visible changes to the text. Flanagan Expires January 1, 2016 [Page 8] Internet-Draft I-D June 2015 6.31. .initial No visible changes to the text. 6.32. .iref No visible changes to the text. 6.33. .irefItem No visible changes to the text. 6.34. .irefRefs No visible changes to the text. 6.35. .irefSubItem No visible changes to the text. 6.36. .label No visible changes to the text. 6.37. .locality No visible changes to the text. 6.38. .namerole No visible changes to the text. 6.39. .note 6.39.1. .rfceditor-remove A note to be added after the standard boilerplage. Make visually distinct to highlight final removal of the note by the RFC Editor. For I-Ds only; not for RFCs. 6.40. .olcompact TBD Flanagan Expires January 1, 2016 [Page 9] Internet-Draft I-D June 2015 6.41. .olpercent TBD 6.42. .org No visible changes to the text. 6.43. .organization No visible changes to the text. 6.44. .pilcrow Pilcrows, when used as described in draft-hildebrand-html-rfc, should appear at the end of the paragraph, artwork, or sourcecode segment. 6.45. .postal-code No visible changes to the text. 6.46. .published No visible changes to the text. 6.47. .refauthor No visible changes to the text. 6.48. .refcontent No visible changes to the text. 6.49. .reference No visible changes to the text. 6.50. .referencegroup No visible changes to the text. 6.51. .region No visible changes to the text. Flanagan Expires January 1, 2016 [Page 10] Internet-Draft I-D June 2015 6.52. .relref TBD 6.53. .rendered No visible changes to the text. 6.54. .role No visible changes to the text. 6.55. .self-ref No visible changes to the text. 6.56. .series No visible changes to the text. 6.57. .seriesInfo No visible changes to the text. 6.58. .sourcecode Same styling as ".code" 6.58.1. .lang- Example: lang-c 6.59. .status No visible changes to the text. 6.60. .street-address No visible changes to the text. 6.61. .surname No visible changes to the text. Flanagan Expires January 1, 2016 [Page 11] Internet-Draft I-D June 2015 6.62. .tel No visible changes to the text. 6.63. .toc Formatting will be required. Details TBD. 6.64. .type No visible changes to the text. 6.65. .ulcompact TBD 6.66. .url TBD 6.67. .workgroup No visible changes to the text. 6.68. .xref TBD 7. Security Considerations Security vulnerabilities can be introduced through the CSS. How much detail do we need to go into here to say "don't do foolish things and introduce security issues?" 8. IANA Considerations This draft contains no action for IANA 9. Normative References [HTMLBP] W3C, "Best Practices for Authoring HTML Current Status", n.d., . [RFC5741] Daigle, L., Kolkman, O., and IAB, "RFC Streams, Headers, and Boilerplates", RFC 5741, December 2009. [RFC7322] Flanagan, H. and S. Ginoza, "RFC Style Guide", RFC 7322, September 2014. Flanagan Expires January 1, 2016 [Page 12] Internet-Draft I-D June 2015 [I-D.hildebrand-html-rfc] Hildebrand, J. and P. Hoffman, "HyperText Markup Language Request For Comments Format", draft-hildebrand-html-rfc-07 (work in progress), June 2015. [I-D.flanagan-rfc-framework] Flanagan, H., "RFC Format Framework", draft-flanagan-rfc- framework-04 (work in progress), June 2015. Author's Address Heather Flanagan RFC Editor Email: rse@rfc-editor.org URI: http://orcid.org/0000-0002-2647-2220 Flanagan Expires January 1, 2016 [Page 13]