Подтвердить что ты не робот

Хороший HTML-скелет

Я хочу начать создавать веб-сайты снова, но я уже давно вышел из HTML-сцены. Мне просто интересно, хорошо ли это скелет для веб-сайта. А если нет, что я должен изменить, добавить и/или удалить?

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">

<html>
    <head>
        <rel="stylesheet" type="text/css" href="css/main.css" />
        <meta http-equiv="content-type" content="text/php; charset=utf-8" />

        <title>Site Template - Welcome!</title>
    </head>

    <body>
        <div class="Container">
            <div class="Header">

            </div>

            <div class="Menu">
                <ul id="nav"> 
                    <li>menu item</li>  
                    <li>menu item</li> 
                    <li>menu item</li>  
                    <li>menu item</li> 
                    <li>menu item</li>  
                    <li>menu item</li> 
                </ul> 
            </div>

            <div class="Body">

            </div>
        </div>

    </body>

    <footer>
        <div class="Footer">
            <b>Copyright - 2010</b>
        </div>
    </footer>
</html>
4b9b3361

Ответ 1

Попробуйте www.htmlshell.com, вы можете получить базовый скелет, с дополнительным включением для таких вещей, как jQuery или favicons и т.д.

Ответ 2

Я начинал с HTML5 Boilerplate... это помогает убедиться, что все наиболее согласовано в разных браузерах и уже учитывает большинство материалов, которые мне понадобятся позже.

Ответ 3

TL;DR

<!DOCTYPE html>
<html dir="ltr" lang="en">
<head>
  <meta charset="utf-8">
  <title>Example</title>
  <link rel="stylesheet" href="/default.css">
  <link rel="icon" href="/favicon.png" sizes="16x16" type="image/png">
  <link rel="canonical" href="http://example.com/">
  <meta name="description" content="…">
</head>
<body>

  <header>
    <!-- site-wide header -->
    <h1>Example <!-- site name --></h1>
  </header>

  <main>
    <!-- this page’s main content -->
  </main>

  <nav>
    <!-- site-wide navigation -->
  </nav>

  <footer>
    <!-- site-wide footer -->
  </footer>

</body>
</html>

Скелет HTML5 может выглядеть следующим образом:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <title>CC</title>
</head>
<body>

</body>
</html>

(Обратите внимание, что это не самый минимальный документ HTML5, поэтому многие части являются необязательными.)

Если вы используете другую кодировку, чем UTF-8, измените значение meta - charset соответственно.

Если вы используете другой язык контента, чем английский, измените значение атрибута lang.

Если вы хотите явно указать направленность текста, используйте dir атрибут в элементе html, например: <html dir="ltr" lang="en">

Общие элементы link/meta для добавления в head

  • Ссылка на stylesheet (по умолчанию используется text/css):

    <link rel="stylesheet" href="/default.css">
    
  • Ссылка на favicon:

    <link rel="icon" href="/favicon.png" sizes="16x16" type="image/png">
    
  • Указание канонический URL документа:

    <link rel="canonical" href="http://example.com/">
    
  • Предоставление description содержимого страниц:

    <meta name="description" content="…">
    

Элементы для body

Поскольку каждая страница отличается, на нее нельзя ответить в целом, поэтому лучше всего оставить body пустым.

Однако большинство страниц, вероятно, являются частью веб-сайта, и большинство веб-сайтов, возможно, имеют заголовок сайта (→ header) с именем сайта (→ h1), нижний колонтитул (→ footer) и меню навигации (→ nav). Они должны принадлежать корневому сектору body (т.е. Не иметь другого элемента содержимого секционирования в качестве родителя). nav может быть или не быть частью header.
Основное содержимое (→ main) может содержать или не состоять из элемента секционирования (обычно article или section, или нескольких из них).

<header>
  <!-- site-wide header -->
  <h1>Example <!-- site name --></h1>
</header>

<main>
  <!-- this page’s main content -->
</main>

<nav>
  <!-- site-wide navigation -->
</nav>

<footer>
  <!-- site-wide footer -->
</footer>

Ответ 4

В XHTML 1.0 Transitional нет ничего похожего на элемент <footer>. Вы должны сделать это следующим образом:

<body>
    ...
    <div class="footer">
        ...
    </div>
</body>

Мне нравится использовать строгий doctype в моих проектах, но ваш тоже работает.

Ответ 5

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
    "http://www.w3.org/TR/html4/strict.dtd">
<html>
    <head>
        <link rel="stylesheet" type="text/css" href="main/css.css">
        <meta http-equiv="content-type" content="text/html;charset=utf-8">

        <title>Site Template - Welcome!</title>
    </head>

    <body>
        <div class="Container">
            <div class="Header">

            </div>

            <div class="Menu">
                <ul id="nav"> 
                    <li>menu item</li>  
                    <li>menu item</li> 
                    <li>menu item</li>  
                    <li>menu item</li> 
                    <li>menu item</li>  
                    <li>menu item</li> 
                </ul> 
            </div>

            <div class="Body">

            </div>
            <div class="Footer">
                Copyright - 2010
            </div>
        </div>
    </body>
</html>