|
1 | 1 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"> |
2 | 2 | <html lang="en"> |
3 | | -<!-- $Id: changes.src,v 2.96 2009-02-03 11:24:59 bbos Exp $ --> |
| 3 | +<!-- $Id: changes.src,v 2.97 2009-02-23 18:30:50 bbos Exp $ --> |
4 | 4 | <HEAD> |
5 | 5 | <TITLE>Changes</TITLE> |
6 | 6 | </HEAD> |
@@ -2634,369 +2634,6 @@ should not cause a document to reflow.</p> |
2634 | 2634 | <p>Added paragraph clarifying that some presentational markup in |
2635 | 2635 | HTML can be replaced with CSS, but it requires different markup.</p> |
2636 | 2636 |
|
2637 | | -<h2><a name="diffs">Code Diffs for Appendices D and G</a></h2> |
2638 | | - |
2639 | | -<h3 id="dD"><a href="sample.html">Appendix D |
2640 | | -Default style sheet for HTML4</a></h3> |
2641 | | - |
2642 | | -<p>In addition to lowercasing all HTML tag names, the following changes |
2643 | | -were made:</p> |
2644 | | - |
2645 | | -<pre> |
2646 | | --ADDRESS, |
2647 | | -+html, address, |
2648 | | - BLOCKQUOTE, |
2649 | | - BODY, DD, DIV, |
2650 | | --DL, DT, |
2651 | | --FIELDSET, FORM, |
2652 | | -+dl, dt, fieldset, form, |
2653 | | - FRAME, FRAMESET, |
2654 | | --H1, H2, H3, H4, |
2655 | | --H5, H6, IFRAME, |
2656 | | --NOFRAMES, |
2657 | | -+h1, h2, h3, h4, |
2658 | | -+h5, h6, noframes, |
2659 | | --OBJECT, OL, P, |
2660 | | --UL, APPLET, |
2661 | | --CENTER, DIR, |
2662 | | --HR, MENU, PRE { display: block } |
2663 | | -+ol, p, ul, center, |
2664 | | -+dir, hr, menu, pre { display: block } |
2665 | | - LI { display: list-item } |
2666 | | - HEAD { display: none } |
2667 | | - TABLE { display: table } |
2668 | | - TR { display: table-row } |
2669 | | - THEAD { display: table-header-group } |
2670 | | - TBODY { display: table-row-group } |
2671 | | - TFOOT { display: table-footer-group } |
2672 | | - COL { display: table-column } |
2673 | | - COLGROUP { display: table-column-group } |
2674 | | - TD, TH { display: table-cell } |
2675 | | - CAPTION { display: table-caption } |
2676 | | - TH { font-weight: bolder; text-align: center } |
2677 | | - CAPTION { text-align: center } |
2678 | | --BODY { padding: 8px; line-height: 1.33 } |
2679 | | -+body { margin: 8px } |
2680 | | - H1 { font-size: 2em; margin: .67em 0 } |
2681 | | --H2 { font-size: 1.5em; margin: .83em 0 } |
2682 | | --H3 { font-size: 1.17em; margin: 1em 0 } |
2683 | | -+h2 { font-size: 1.5em; margin: .75em 0 } |
2684 | | -+h3 { font-size: 1.17em; margin: .83em 0 } |
2685 | | - H4, P, |
2686 | | - BLOCKQUOTE, UL, |
2687 | | - FIELDSET, FORM, |
2688 | | - OL, DL, DIR, |
2689 | | --MENU { margin: 1.33em 0 } |
2690 | | --H5 { font-size: .83em; line-height: 1.17em; margin: 1.67em 0 } |
2691 | | --H6 { font-size: .67em; margin: 2.33em 0 } |
2692 | | -+menu { margin: 1.12em 0 } |
2693 | | -+h5 { font-size: .83em; margin: 1.5em 0 } |
2694 | | -+h6 { font-size: .75em; margin: 1.67em 0 } |
2695 | | - H1, H2, H3, H4, |
2696 | | - H5, H6, B, |
2697 | | - STRONG { font-weight: bolder } |
2698 | | - BLOCKQUOTE { margin-left: 40px; margin-right: 40px } |
2699 | | - I, CITE, EM, |
2700 | | - VAR, ADDRESS { font-style: italic } |
2701 | | - PRE, TT, CODE, |
2702 | | - KBD, SAMP { font-family: monospace } |
2703 | | - PRE { white-space: pre } |
2704 | | -+button, textarea, |
2705 | | -+input, select { display: inline-block } |
2706 | | - BIG { font-size: 1.17em } |
2707 | | - SMALL, SUB, SUP { font-size: .83em } |
2708 | | - SUB { vertical-align: sub } |
2709 | | - SUP { vertical-align: super } |
2710 | | -+table { border-spacing: 2px; } |
2711 | | -+thead, tbody, |
2712 | | -+tfoot { vertical-align: middle } |
2713 | | -+td, th { vertical-align: inherit } |
2714 | | - S, STRIKE, DEL { text-decoration: line-through } |
2715 | | - HR { border: 1px inset } |
2716 | | - OL, UL, DIR, |
2717 | | - MENU, DD { margin-left: 40px } |
2718 | | - OL { list-style-type: decimal } |
2719 | | - OL UL, UL OL, |
2720 | | - UL UL, OL OL { margin-top: 0; margin-bottom: 0 } |
2721 | | - U, INS { text-decoration: underline } |
2722 | | --CENTER { text-align: center } |
2723 | | - BR:before { content: "\A" } |
2724 | | -- |
2725 | | --/* An example of style for HTML 4.0's ABBR/ACRONYM elements */ |
2726 | | -- |
2727 | | --ABBR, ACRONYM { font-variant: small-caps; letter-spacing: 0.1em } |
2728 | | --A[href] { text-decoration: underline } |
2729 | | -+:before, :after { white-space: pre-line } |
2730 | | -+center { text-align: center } |
2731 | | -+:link, :visited { text-decoration: underline } |
2732 | | - :focus { outline: thin dotted invert } |
2733 | | - |
2734 | | --/* Begin bidirectionality settings (do not change) */ |
2735 | | -+/* Begin bidirectionality settings (do not change) */ |
2736 | | - BDO[DIR="ltr"] { direction: ltr; unicode-bidi: bidi-override } |
2737 | | - BDO[DIR="rtl"] { direction: rtl; unicode-bidi: bidi-override } |
2738 | | - |
2739 | | - *[DIR="ltr"] { direction: ltr; unicode-bidi: embed } |
2740 | | - *[DIR="rtl"] { direction: rtl; unicode-bidi: embed } |
2741 | | -- |
2742 | | --/* Elements that are block-level in HTML4 */ |
2743 | | --ADDRESS, BLOCKQUOTE, BODY, DD, DIV, DL, DT, FIELDSET, |
2744 | | --FORM, FRAME, FRAMESET, H1, H2, H3, H4, H5, H6, IFRAME, |
2745 | | --NOSCRIPT, NOFRAMES, OBJECT, OL, P, UL, APPLET, CENTER, |
2746 | | --DIR, HR, MENU, PRE, LI, TABLE, TR, THEAD, TBODY, TFOOT, |
2747 | | --COL, COLGROUP, TD, TH, CAPTION |
2748 | | -- { unicode-bidi: embed } |
2749 | | --/* End bidi settings */ |
2750 | | - |
2751 | | - @media print { |
2752 | | -- @page { margin: 10% } |
2753 | | -+ h1 { page-break-before: always } |
2754 | | - H1, H2, H3, |
2755 | | -- H4, H5, H6 { page-break-after: avoid; page-break-inside: avoid } |
2756 | | -+ h4, h5, h6 { page-break-after: avoid } |
2757 | | -- BLOCKQUOTE, |
2758 | | -- PRE { page-break-inside: avoid } |
2759 | | - UL, OL, DL { page-break-before: avoid } |
2760 | | - } |
2761 | | - |
2762 | | --@media speech { |
2763 | | -- H1, H2, H3, |
2764 | | -- H4, H5, H6 { voice-family: paul, male; stress: 20; richness: 90 } |
2765 | | -- H1 { pitch: x-low; pitch-range: 90 } |
2766 | | -- H2 { pitch: x-low; pitch-range: 80 } |
2767 | | -- H3 { pitch: low; pitch-range: 70 } |
2768 | | -- H4 { pitch: medium; pitch-range: 60 } |
2769 | | -- H5 { pitch: medium; pitch-range: 50 } |
2770 | | -- H6 { pitch: medium; pitch-range: 40 } |
2771 | | -- LI, DT, DD { pitch: medium; richness: 60 } |
2772 | | -- DT { stress: 80 } |
2773 | | -- PRE, CODE, TT { pitch: medium; pitch-range: 0; stress: 0; richness: 80 } |
2774 | | -- EM { pitch: medium; pitch-range: 60; stress: 60; richness: 50 } |
2775 | | -- STRONG { pitch: medium; pitch-range: 60; stress: 90; richness: 90 } |
2776 | | -- DFN { pitch: high; pitch-range: 60; stress: 60 } |
2777 | | -- S, STRIKE { richness: 0 } |
2778 | | -- I { pitch: medium; pitch-range: 60; stress: 60; richness: 50 } |
2779 | | -- B { pitch: medium; pitch-range: 60; stress: 90; richness: 90 } |
2780 | | -- U { richness: 0 } |
2781 | | -- A:link { voice-family: harry, male } |
2782 | | -- A:visited { voice-family: betty, female } |
2783 | | -- A:active { voice-family: betty, female; pitch-range: 80; pitch: x-high } |
2784 | | --} |
2785 | | -</pre> |
2786 | | - |
2787 | | -<h3 id="dG.1"><a name="grammar.html#grammar">Section G.1 |
2788 | | -Grammar</a></h3> |
2789 | | - |
2790 | | -<pre> |
2791 | | - stylesheet |
2792 | | -- : [ CHARSET_SYM S* STRING S* ';' ]? |
2793 | | -+ : [ CHARSET_SYM STRING ';' ]? |
2794 | | - [S|CDO|CDC]* [ import [S|CDO|CDC]* ]* |
2795 | | -- [ [ ruleset | media | page | font_face ] [S|CDO|CDC]* ]* |
2796 | | -+ [ [ ruleset | media | page ] [S|CDO|CDC]* ]* |
2797 | | - ; |
2798 | | - import |
2799 | | - : IMPORT_SYM S* |
2800 | | -- [STRING|URI] S* [ medium [ ',' S* medium]* ]? ';' S* |
2801 | | -+ [STRING|URI] S* [ medium [ COMMA S* medium]* ]? ';' S* |
2802 | | - ; |
2803 | | - media |
2804 | | -- : MEDIA_SYM S* medium [ ',' S* medium ]* '{' S* ruleset* '}' S* |
2805 | | -+ : MEDIA_SYM S* medium [ COMMA S* medium ]* LBRACE S* ruleset* '}' S* |
2806 | | - ; |
2807 | | - medium |
2808 | | - : IDENT S* |
2809 | | - ; |
2810 | | - page |
2811 | | -- : PAGE_SYM S* IDENT? pseudo_page? S* |
2812 | | -- '{' S* declaration [ ';' S* declaration ]* '}' S* |
2813 | | -+ : PAGE_SYM S* pseudo_page? S* |
2814 | | -+ LBRACE S* declaration [ ';' S* declaration ]* '}' S* |
2815 | | - ; |
2816 | | - pseudo_page |
2817 | | - : ':' IDENT |
2818 | | - ; |
2819 | | --font_face |
2820 | | -- : FONT_FACE_SYM S* |
2821 | | -- '{' S* declaration [ ';' S* declaration ]* '}' S* |
2822 | | -- ; |
2823 | | - operator |
2824 | | -- : '/' S* | ',' S* | /* empty */ |
2825 | | -+ : '/' S* | COMMA S* | /* empty */ |
2826 | | - ; |
2827 | | - combinator |
2828 | | -- : '+' S* | '>' S* | /* empty */ |
2829 | | -+ : PLUS S* |
2830 | | -+ | GREATER S* |
2831 | | -+ | S |
2832 | | - ; |
2833 | | - unary_operator |
2834 | | -- : '-' | '+' |
2835 | | -+ : '-' | PLUS |
2836 | | - ; |
2837 | | - property |
2838 | | - : IDENT S* |
2839 | | - ; |
2840 | | - ruleset |
2841 | | -- : selector [ ',' S* selector ]* |
2842 | | -- '{' S* declaration [ ';' S* declaration ]* '}' S* |
2843 | | -+ : selector [ COMMA S* selector ]* |
2844 | | -+ LBRACE S* declaration [ ';' S* declaration ]* '}' S* |
2845 | | - ; |
2846 | | - <span class="index-inst" title="selector">selector</span> |
2847 | | - : simple_selector [ combinator simple_selector ]* |
2848 | | - ; |
2849 | | --/* |
2850 | | -- * simple selector cannot start with attrib selector |
2851 | | -- */ |
2852 | | - simple_selector |
2853 | | -- : element_name [ HASH | class | attrib | pseudo ]* S* |
2854 | | -- | HASH [ HASH | class | attrib | pseudo ]* S* |
2855 | | -- | pseudo [ HASH | class | attrib | pseudo ]* S* |
2856 | | -- | class [ HASH | class | attrib | pseudo ]* S* |
2857 | | -+ : element_name [ HASH | class | attrib | pseudo ]* |
2858 | | -+ | [ HASH | class | attrib | pseudo ]+ |
2859 | | - ; |
2860 | | - class |
2861 | | - : '.' IDENT |
2862 | | -@@ -108,7 +98,7 @@ |
2863 | | - [ IDENT | STRING ] S* ]? ']' |
2864 | | - ; |
2865 | | - pseudo |
2866 | | -- : ':' [ IDENT | FUNCTION S* IDENT S* ')' ] |
2867 | | -+ : ':' [ IDENT | FUNCTION S* IDENT? S* ')' ] |
2868 | | - ; |
2869 | | - declaration |
2870 | | - : property ':' S* expr prio? |
2871 | | - | /* empty */ |
2872 | | - ; |
2873 | | - prio |
2874 | | - : IMPORTANT_SYM S* |
2875 | | - ; |
2876 | | - expr |
2877 | | - : term [ operator term ]* |
2878 | | - ; |
2879 | | - term |
2880 | | - : unary_operator? |
2881 | | - [ NUMBER S* | PERCENTAGE S* | LENGTH S* | EMS S* | EXS S* | ANGLE S* | |
2882 | | -- TIME S* | FREQ S* | function ] |
2883 | | -- | STRING S* | IDENT S* | URI S* | RGB S* | UNICODERANGE S* | hexcolor |
2884 | | -+ TIME S* | FREQ S* ] |
2885 | | -+ | STRING S* | IDENT S* | URI S* | hexcolor | function |
2886 | | - ; |
2887 | | - function |
2888 | | - : FUNCTION S* expr ')' S* |
2889 | | -</pre> |
2890 | | - |
2891 | | -<h3 id="dG.2"><a href="grammar.html#scanner">Section G.2 |
2892 | | -Lexical scanner</a></h3> |
2893 | | - |
2894 | | -<pre> |
2895 | | - %option case-insensitive |
2896 | | - |
2897 | | - h [0-9a-f] |
2898 | | - nonascii [\200-\377] |
2899 | | - unicode \\{h}{1,6}(\r\n|[ \t\r\n\f])? |
2900 | | - escape {unicode}|\\[^\r\n\f0-9a-f] |
2901 | | - nmstart [_a-z]|{nonascii}|{escape} |
2902 | | - nmchar [_a-z0-9-]|{nonascii}|{escape} |
2903 | | - string1 \"([^\n\r\f\\"]|\\{nl}|{escape})*\" |
2904 | | - string2 \'([^\n\r\f\\']|\\{nl}|{escape})*\' |
2905 | | - invalid1 \"([^\n\r\f\\"]|\\{nl}|{escape})* |
2906 | | - invalid2 \'([^\n\r\f\\']|\\{nl}|{escape})* |
2907 | | - |
2908 | | - comment \/\*[^*]*\*+([^/*][^*]*\*+)*\/ |
2909 | | - ident -?{nmstart}{nmchar}* |
2910 | | - name {nmchar}+ |
2911 | | - num [0-9]+|[0-9]*"."[0-9]+ |
2912 | | - string {string1}|{string2} |
2913 | | - invalid {invalid1}|{invalid2} |
2914 | | - url ([!#$%&*-~]|{nonascii}|{escape})* |
2915 | | - s [ \t\r\n\f]+ |
2916 | | - w {s}? |
2917 | | - nl \n|\r\n|\r|\f |
2918 | | - |
2919 | | - A a|\\0{0,4}(41|61)(\r\n|[ \t\r\n\f])? |
2920 | | - C c|\\0{0,4}(43|63)(\r\n|[ \t\r\n\f])? |
2921 | | - D d|\\0{0,4}(44|64)(\r\n|[ \t\r\n\f])? |
2922 | | - E e|\\0{0,4}(45|65)(\r\n|[ \t\r\n\f])? |
2923 | | - G g|\\0{0,4}(47|67)(\r\n|[ \t\r\n\f])?|\\g |
2924 | | - H h|\\0{0,4}(48|68)(\r\n|[ \t\r\n\f])?|\\h |
2925 | | - I i|\\0{0,4}(49|69)(\r\n|[ \t\r\n\f])?|\\i |
2926 | | - K k|\\0{0,4}(4b|6b)(\r\n|[ \t\r\n\f])?|\\k |
2927 | | - M m|\\0{0,4}(4d|6d)(\r\n|[ \t\r\n\f])?|\\m |
2928 | | - N n|\\0{0,4}(4e|6e)(\r\n|[ \t\r\n\f])?|\\n |
2929 | | --O o|\\0{0,4}(51|71)(\r\n|[ \t\r\n\f])?|\\o |
2930 | | -+O o|\\0{0,4}(4f|6f)(\r\n|[ \t\r\n\f])?|\\o |
2931 | | - P p|\\0{0,4}(50|70)(\r\n|[ \t\r\n\f])?|\\p |
2932 | | - R r|\\0{0,4}(52|72)(\r\n|[ \t\r\n\f])?|\\r |
2933 | | - S s|\\0{0,4}(53|73)(\r\n|[ \t\r\n\f])?|\\s |
2934 | | - T t|\\0{0,4}(54|74)(\r\n|[ \t\r\n\f])?|\\t |
2935 | | - X x|\\0{0,4}(58|78)(\r\n|[ \t\r\n\f])?|\\x |
2936 | | - Z z|\\0{0,4}(5a|7a)(\r\n|[ \t\r\n\f])?|\\z |
2937 | | - |
2938 | | - %% |
2939 | | - |
2940 | | - {s} {return S;} |
2941 | | - |
2942 | | - \/\*[^*]*\*+([^/*][^*]*\*+)*\/ /* ignore comments */ |
2943 | | --{s}+\/\*[^*]*\*+([^/*][^*]*\*+)*\/ {unput(' '); /*replace by space*/} |
2944 | | - |
2945 | | - "<!--" {return CDO;} |
2946 | | - "-->" {return CDC;} |
2947 | | - "~=" {return INCLUDES;} |
2948 | | - "|=" {return DASHMATCH;} |
2949 | | - |
2950 | | - {w}"{" {return LBRACE;} |
2951 | | - {w}"+" {return PLUS;} |
2952 | | - {w}">" {return GREATER;} |
2953 | | - {w}"," {return COMMA;} |
2954 | | - |
2955 | | - {string} {return STRING;} |
2956 | | - {invalid} {return INVALID; /* unclosed string */} |
2957 | | - |
2958 | | - {ident} {return IDENT;} |
2959 | | - |
2960 | | - "#"{name} {return HASH;} |
2961 | | - |
2962 | | - @{I}{M}{P}{O}{R}{T} {return IMPORT_SYM;} |
2963 | | - @{P}{A}{G}{E} {return PAGE_SYM;} |
2964 | | - @{M}{E}{D}{I}{A} {return MEDIA_SYM;} |
2965 | | --@{C}{H}{A}{R}{S}{E}{T} {return CHARSET_SYM;} |
2966 | | -+"@charset " {return CHARSET_SYM;} |
2967 | | - |
2968 | | - "!"({w}|{comment})*{I}{M}{P}{O}{R}{T}{A}{N}{T} {return IMPORTANT_SYM;} |
2969 | | - |
2970 | | - {num}{E}{M} {return EMS;} |
2971 | | - {num}{E}{X} {return EXS;} |
2972 | | - {num}{P}{X} {return LENGTH;} |
2973 | | - {num}{C}{M} {return LENGTH;} |
2974 | | - {num}{M}{M} {return LENGTH;} |
2975 | | - {num}{I}{N} {return LENGTH;} |
2976 | | - {num}{P}{T} {return LENGTH;} |
2977 | | - {num}{P}{C} {return LENGTH;} |
2978 | | - {num}{D}{E}{G} {return ANGLE;} |
2979 | | - {num}{R}{A}{D} {return ANGLE;} |
2980 | | - {num}{G}{R}{A}{D} {return ANGLE;} |
2981 | | - {num}{M}{S} {return TIME;} |
2982 | | - {num}{S} {return TIME;} |
2983 | | - {num}{H}{Z} {return FREQ;} |
2984 | | - {num}{K}{H}{Z} {return FREQ;} |
2985 | | - {num}{ident} {return DIMENSION;} |
2986 | | - |
2987 | | - {num}% {return PERCENTAGE;} |
2988 | | - {num} {return NUMBER;} |
2989 | | - |
2990 | | --"url("{w}{string}{w}")" {return URI;} |
2991 | | --"url("{w}{url}{w}")" {return URI;} |
2992 | | -+{U}{R}{L}"("{w}{string}{w}")" {return URI;} |
2993 | | -+{U}{R}{L}"("{w}{url}{w}")" {return URI;} |
2994 | | -+ |
2995 | | - {ident}"(" {return FUNCTION;} |
2996 | | - |
2997 | | - . {return *yytext;} |
2998 | | -</pre> |
2999 | | - |
3000 | 2637 | <h2><a name=errata>Errata since the Candidate Recommendation of July |
3001 | 2638 | 2007</a></h2> |
3002 | 2639 |
|
|
0 commit comments