JezK
Edit File: HTML-Translation.html
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <!-- Created by GNU Texinfo 6.8, https://www.gnu.org/software/texinfo/ --> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <!-- This manual is for GNU Texinfo (version 6.8, 8 June 2021), a documentation system that can produce both online information and a printed manual from a single source using semantic markup. Copyright (C) 1988, 1990-1993, 1995-1999, 2001-2021 Free Software Foundation, Inc. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, with no Front-Cover Texts, and with no Back-Cover Texts. A copy of the license is included in the section entitled "GNU Free Documentation License". --> <title>HTML Translation (GNU Texinfo 6.8)</title> <meta name="description" content="HTML Translation (GNU Texinfo 6.8)"> <meta name="keywords" content="HTML Translation (GNU Texinfo 6.8)"> <meta name="resource-type" content="document"> <meta name="distribution" content="global"> <meta name="Generator" content="texi2any"> <meta name="viewport" content="width=device-width,initial-scale=1"> <link href="index.html" rel="start" title="Top"> <link href="Command-and-Variable-Index.html" rel="index" title="Command and Variable Index"> <link href="index.html#SEC_Contents" rel="contents" title="Table of Contents"> <link href="Generating-HTML.html" rel="up" title="Generating HTML"> <link href="HTML-Splitting.html" rel="next" title="HTML Splitting"> <style type="text/css"> <!-- a.copiable-anchor {visibility: hidden; text-decoration: none; line-height: 0em} a.summary-letter {text-decoration: none} blockquote.indentedblock {margin-right: 0em} div.display {margin-left: 3.2em} div.example {margin-left: 3.2em} kbd {font-style: oblique} pre.display {font-family: inherit} pre.format {font-family: inherit} pre.menu-comment {font-family: serif} pre.menu-preformatted {font-family: serif} span.nolinebreak {white-space: nowrap} span.roman {font-family: initial; font-weight: normal} span.sansserif {font-family: sans-serif; font-weight: normal} span:hover a.copiable-anchor {visibility: visible} ul.no-bullet {list-style: none} --> </style> </head> <body lang="en"> <div class="section" id="HTML-Translation"> <div class="header"> <p> Next: <a href="HTML-Splitting.html" accesskey="n" rel="next">HTML Splitting</a>, Up: <a href="Generating-HTML.html" accesskey="u" rel="up">Generating HTML</a> [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="Command-and-Variable-Index.html" title="Index" rel="index">Index</a>]</p> </div> <hr> <span id="HTML-Translation-1"></span><h3 class="section">21.1 HTML Translation</h3> <span id="index-HTML-translation"></span> <span id="index-HTML-output_002c-browser-compatibility-of"></span> <p>First, the HTML generated by <code>makeinfo</code> is standard HTML 4. When first written, it also tried to be compatible with earlier standards (e.g., HTML 2.0, RFC-1866). </p> <p>Please report output from an error-free run of <code>makeinfo</code> which has practical browser portability problems as a bug (see <a href="Reporting-Bugs.html">Reporting Bugs</a>). </p> <span id="index-html32_002epm"></span> <p>Some known exceptions to HTML 3.2 (using ‘<samp>--init-file=html32.pm</samp>’ produced strict HTML 3.2 output, but this has not been tested lately; see <a href="Invoking-texi2any.html">Invoking <code>texi2any</code>/<code>makeinfo</code> from a Shell</a>): </p> <ol> <li> HTML 3.2 tables are generated for the <code>@multitable</code> command (see <a href="Multi_002dcolumn-Tables.html"><code>@multitable</code>: Multi-column Tables</a>), but they should degrade reasonably in browsers without table support. </li><li> The HTML 4 ‘<samp>id</samp>’ attribute is used. </li><li> The HTML 4 ‘<samp>lang</samp>’ attribute on the ‘<samp><html></samp>’ attribute is used. </li><li> Entities that are not in the HTML 3.2 standard are also used. </li><li> CSS is used (see <a href="HTML-CSS.html">HTML CSS</a>). </li><li> Some HTML 4 elements are used: <code>span</code>, <code>thead</code>, <code>abbr</code>, <code>acronym</code>. </li></ol> <p>To achieve maximum portability and accessibility among browsers (both graphical and text-based), systems, and users, the HTML output is intentionally quite plain and generic. It has always been our goal for users to be able to customize the output to their wishes via CSS (see <a href="HTML-CSS.html">HTML CSS</a>) or other means (see <a href="Customization-Variables.html">Customization Variables</a>). If you cannot accomplish a reasonable customization, feel free to report that. </p> <p>However, we do not wish to depart from our basic goal of widest readability for the core output. For example, using fancy CSS may make it possible for the HTML output to more closely resemble the TeX output in some details, but this result is not even close to being worth the ensuing difficulties. </p> <p>It is also intentionally not our goal, and not even possible, to pass through every conceivable validation test without any diagnostics. Different validation tests have different goals, often about pedantic enforcement of some standard or another. Our overriding goal is to help users, not blindly comply with standards. </p> <p>To repeat what was said at the top: please report output from an error-free run of <code>makeinfo</code> which has <em>practical</em> browser portability problems as a bug (see <a href="Reporting-Bugs.html">Reporting Bugs</a>). </p> <p>A few other general points about the HTML output follow. </p> <span id="index-Navigation-bar_002c-in-HTML-output"></span> <p><strong>Navigation bar:</strong> By default, a navigation bar is inserted at the start of each node, analogous to Info output. If the ‘<samp>--no-headers</samp>’ option is used, the navigation bar is only inserted at the beginning of split files. Header <code><link></code> elements in split output can support Info-like navigation with browsers like Lynx and Emacs W3<!-- /@w --> which implement this HTML 1.0 feature. </p> <span id="index-Footnote-styles_002c-in-HTML"></span> <p><strong>Footnotes:</strong> for HTML, when the footnote style is ‘<samp>end</samp>’, or if the output is not split, footnotes are put at the end of the output. If the footnote style is set to ‘<samp>separate</samp>’, and the output is split, they are placed in a separate file. See <a href="Footnote-Styles.html">Footnote Styles</a>. </p> <span id="index-Escaping-to-HTML"></span> <span id="index-Raw-HTML"></span> <p><strong>Raw HTML</strong>: <code>makeinfo</code> will include segments of Texinfo source between <code>@ifhtml</code> and <code>@end ifhtml</code> in the HTML output (but not any of the other conditionals, by default). Source between <code>@html</code> and <code>@end html</code> is passed without change to the output (i.e., suppressing the normal escaping of input ‘<samp><</samp>’, ‘<samp>></samp>’ and ‘<samp>&</samp>’ characters which have special significance in HTML). See <a href="Conditional-Commands.html">Conditional Commands</a>. </p> </div> <hr> <div class="header"> <p> Next: <a href="HTML-Splitting.html">HTML Splitting</a>, Up: <a href="Generating-HTML.html">Generating HTML</a> [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="Command-and-Variable-Index.html" title="Index" rel="index">Index</a>]</p> </div> </body> </html>