国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

Heim Web-Frontend HTML-Tutorial HTML5 Boilerplate

HTML5 Boilerplate

Jun 24, 2016 am 11:51 AM

最近看到了HTML5 Boilerplate模版,系統(tǒng)的學習與了解了一下。在各種CSS庫、JS框架層出不窮的今天,能看到這么好的HTML模版,感覺甚爽。寫篇博客,推薦給大家使用。

?

一:HTML5 Boilerplate是什么?解決了什么問題?

對于第一次聽說這個人,肯定都有這個疑問把!在網(wǎng)上看了看,發(fā)現(xiàn)很多人都認為這個是和Bootstrap一樣的東西,這真是大錯特錯了。

實際上,HTML5 Boilerplate只是一個單純的HTML模版。

什么?HTML模版?干嘛用?

這里不得不提所有前端開發(fā)都會遇到的問題,每次要重新弄一個頁面的時候,你們都是怎么做的呢?那個doctype、html、head、body、meta標簽,寫的多心煩?;蛘邚囊郧暗捻椖恐袕椭?,或者抄一抄Bootstrap推薦的模版等等。但是在做這些事情的時候,有沒有想過,自己的寫法是否是最好的呢?或者說業(yè)界對這個有沒有一個比較統(tǒng)一的推薦?那么,答案是有的。

HTML5 Boilerplate就是解決了這么一個問題,它提供了一個十分完善的HTML模版,完善到所有的頁面似乎都應該遵守這個規(guī)則。

說的這么神乎其神,那么我們還是要一看究竟才行。從 官網(wǎng)下載 然后,最核心的的是一個index.html文件,不大,我們來看看它的源碼

<!DOCTYPE html><!--[if lt IE 7]>      <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]--><!--[if IE 7]>         <html class="no-js lt-ie9 lt-ie8"> <![endif]--><!--[if IE 8]>         <html class="no-js lt-ie9"> <![endif]--><!--[if gt IE 8]><!--> <html class="no-js"> <!--<![endif]-->    <head>        <meta charset="utf-8">        <meta http-equiv="X-UA-Compatible" content="IE=edge">        <title></title>        <meta name="description" content="">        <meta name="viewport" content="width=device-width, initial-scale=1">        <!-- Place favicon.ico and apple-touch-icon.png in the root directory -->        <link rel="stylesheet" href="css/normalize.css">        <link rel="stylesheet" href="css/main.css">        <script src="js/vendor/modernizr-2.6.2.min.js"></script>    </head>    <body>        <!--[if lt IE 7]>            <p class="browsehappy">You are using an <strong>outdated</strong> browser. Please <a href="http://browsehappy.com/">upgrade your browser</a> to improve your experience.</p>        <![endif]-->        <!-- Add your site or application content here -->        <p>Hello world! This is HTML5 Boilerplate.</p>        <script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>        <script>window.jQuery || document.write('<script src="js/vendor/jquery-1.10.2.min.js"><\/script>')</script>        <script src="js/plugins.js"></script>        <script src="js/main.js"></script>        <!-- Google Analytics: change UA-XXXXX-X to be your site's ID. -->        <script>            (function(b,o,i,l,e,r){b.GoogleAnalyticsObject=l;b[l]||(b[l]=            function(){(b[l].q=b[l].q||[]).push(arguments)});b[l].l=+new Date;            e=o.createElement(i);r=o.getElementsByTagName(i)[0];            e.src='//www.google-analytics.com/analytics.js';            r.parentNode.insertBefore(e,r)}(window,document,'script','ga'));            ga('create','UA-XXXXX-X');ga('send','pageview');        </script>    </body></html>

這可以說就是HTML5 Boilerplate的全部了。大概看一下,肯定會發(fā)現(xiàn)有些是和自己以前的寫法一樣的,有些又是沒見過的寫法,或者說自己也是這么寫的但是從來沒想過為什么。下面,就先“解剖”下這個HTML文件把。

二:淺析index.html

首先,文檔類型使用了HTML5文檔聲明,比起HTML4的那一大長串,這個明顯簡單明了。而且,兼容全部瀏覽器。因為IE在設(shè)計的時候,對于這種寫法也會進入標準模式。所以,以后的文檔聲明都這樣寫,省心。

然后,是這么一大段

<!--[if lt IE 7]>      <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]--><!--[if IE 7]>         <html class="no-js lt-ie9 lt-ie8"> <![endif]--><!--[if IE 8]>         <html class="no-js lt-ie9"> <![endif]--><!--[if gt IE 8]><!--> <html class="no-js"> <!--<![endif]-->

這段代碼很經(jīng)典。

首先,我們先看這些條件判斷,意思分別是低于IE7,等于IE7,等于IE8,高于IE8。

然后條件注釋里面,就有相應的類名,比如在 lt IE 7中,html標簽上便會有 lt-ie9 lt-ie8 lt-ie7這3個類,意思分別是低于ie7、8、9 。有什么用呢?其實最大的左右就是在寫CSS HACK的時候,因為這樣寫,就可以不用CSS HACK了,比如如果是ie6,那么html標簽上就會有 lt-ie7這個類,直接用CSS優(yōu)先級覆蓋之前的設(shè)置即可。

然后特殊的地方應該就在最后一句了,最后一句的意思是所有大于ie8和非ie瀏覽器都使用這個html頭。仔細看會發(fā)現(xiàn)里面加了幾個殘缺的注釋標簽。有什么用呢,對于大于ie8的ie瀏覽器,這幾個標簽完全忽略。對于非ie瀏覽器。由于不識別[if gt IE 8],然后和后面的注釋一起,會發(fā)現(xiàn)整個這部分都被注釋了。這樣,就實現(xiàn)了最完美的瀏覽器識別了。

然后還有一個no-js類。這個主要是會和后面的modernizr.js一起使用。因為modernizr會在瀏覽器啟用的js的時候,把no-js換成js。簡單來說這個類可以用來判斷瀏覽器是否啟用了js。

接著,就是

<meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><title></title><meta name="description" content=""><meta name="viewport" content="width=device-width, initial-scale=1">

首先,先設(shè)置文檔編碼,記住這個放最前面(特別注意別放title后面),以免后面代碼出現(xiàn)亂碼。

接下來便是設(shè)置IE使用最新版本來渲染

然后是描述,便于SEO。viewport指定移動端不對網(wǎng)頁進行縮放。

這些個元標簽基本都是一個網(wǎng)頁必須要有的,所以大家可以檢查下自己的網(wǎng)站是否漏了什么。

之后,引入了normalize、main兩個css。modernizr這個js。關(guān)于這3個文件,后面再詳細說明。

進入主體部分。

首先,看到這么一段

<!--[if lt IE 7]>      <p class="browsehappy">You are using an <strong>outdated</strong> browser. Please <a href="http://browsehappy.com/">upgrade your browser</a> to improve your experience.</p><![endif]-->

對于使用低于IE7版本的用戶,給出升級提示,當然,我們可以選擇刪除這一段或者換成一個中文提示

然后呢,便是這一段腳本

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script><script>window.jQuery || document.write('<script src="js/vendor/jquery-1.10.2.min.js"><\/script>')</script><script src="js/plugins.js"></script><script src="js/main.js"></script>

首先,通過CDN引入jquery。這里用的是谷歌的CDN。如果這段照抄,那么,,嘿嘿,網(wǎng)站肯定杯具了。所以這里換成國內(nèi)的jqueryCDN把,比如七牛的。

然后,判斷jQuery對象是否存在。因為CDN有可能掛了。如果jQuery對象不存在,那么我們就可以用自己服務器的jquery把。

然后引入了plugins.js還有main.js。main.js是空的,plugins.js后面詳細說明。

最后一段代碼就是引入google統(tǒng)計了。這里,根據(jù)自己的需要換成百度統(tǒng)計或者是別的把。就不詳細說了。

至此,HTML5 Boilerplate的最關(guān)鍵的模版HTML算是講完了。以后要新弄一個頁面,就照著這個copy把。

不過,HTML5 Boilerplate提供的還不止這些,下面講講單個文件的作用把。

三:靜態(tài)文件

打開項目代碼,可以看到有挺多的文件的,有些是說明文件,比如doc/路徑下的,就不講了,有些是值得講講的,比如css/ js/下的部分文件。挑幾個有趣的說說把。

首先 css目錄下有main和normalize

normalize也許大家都聽過,就是一個瀏覽器重置,里面的每一條css都是進過千千萬萬的人精挑細選的,基本上這個重置屬于公認的了。

里面的具體每條規(guī)則就不細講了,可以百度查看這個項目的文檔,或者直接看注釋也ok。

main就是改項目對normalize的補充,可以看到提供了一些基礎(chǔ)類名方便大家,比如圖片置換,清除浮動等等。

js提供了個plugins.js

代碼如下

// Avoid `console` errors in browsers that lack a console.(function() {    var method;    var noop = function () {};    var methods = [        'assert', 'clear', 'count', 'debug', 'dir', 'dirxml', 'error',        'exception', 'group', 'groupCollapsed', 'groupEnd', 'info', 'log',        'markTimeline', 'profile', 'profileEnd', 'table', 'time', 'timeEnd',        'timeStamp', 'trace', 'warn'    ];    var length = methods.length;    var console = (window.console = window.console || {});    while (length--) {        method = methods[length];        // Only stub undefined methods.        if (!console[method]) {            console[method] = noop;        }    }}());

比較簡單,就不說明了。解決的主要問題就是用console調(diào)試的時候IE報錯。這個問題我想大家都遇見過,調(diào)試代碼忘記刪除,線上IE報錯,導致js無法繼續(xù)執(zhí)行。加了這個,就可以避免掉這問題了。

?

還有就是modernizr了,這是個強大的瀏覽器功能檢查js,具體使用可以在官網(wǎng)上看看教程,這里就不說了。

?

然后,還提供了一些個文件,比如apache的配置htaccess、 404頁面、flash跨域需要的文件crossdomain.xml、爬蟲過濾文件robots.txt等,大家按需使用。

?

?

?

至此,HTML5 Boilerplate算是全部理完了,很簡單的一個項目,但是很實用,也很漂亮??梢宰鳛殚_發(fā)標配。

?

?

?

轉(zhuǎn)載本站文章請注明作者和出處??,請勿用于任何商業(yè)用途

Erkl?rung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Hei?e KI -Werkzeuge

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem v?llig kostenlosen KI-Gesichtstausch-Tool aus!

Hei?e Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Hei?e Themen

PHP-Tutorial
1502
276
Konfigurieren von Dokumentmetadaten im HTML -Kopfelement Konfigurieren von Dokumentmetadaten im HTML -Kopfelement Jul 09, 2025 am 02:30 AM

Metadaten in HTMLhead sind entscheidend für das Verhalten von SEO-, Social Sharing und Browser. 1. Setzen Sie den Seitentitel und die Beschreibung, verwenden Sie es und halten Sie es pr?zise und einzigartig. 2. Fügen Sie OpenGraph- und Twitter -Karteninformationen hinzu, um die Auswirkungen auf die soziale Freigabe zu optimieren, auf die Bildgr??e zu achten und Debugging -Tools zum Testen zu verwenden. 3. Definieren Sie die Einstellungen für den Zeichensatz und die Ansichtsfenster, um sicherzustellen, dass die Unterstützung mehrsprachiger Unterstützung an das mobile Terminal angepasst wird. 4. Optionale Tags wie das Urheberrecht des Autors, die Kontrolle der Roboter und die kanonische Verhindern doppelter Inhalte sollten auch vernünftig konfiguriert werden.

Bestes HTML -Tutorial für Anf?nger im Jahr 2025 Bestes HTML -Tutorial für Anf?nger im Jahr 2025 Jul 08, 2025 am 12:25 AM

Tolearnhtmlin2025, ChooseatutororyThatbalancesHands-On-Practionwithmoderit und IntegrateCsSandjavaScriptbasics.1.PrioritizeHands-OnLearningWithStep-by-Stepprojects-?hnlich

HTML für E -Mail -Vorlagen -Tutorial HTML für E -Mail -Vorlagen -Tutorial Jul 10, 2025 pm 02:01 PM

Wie mache ich HTML -Mail -Vorlagen mit guter Kompatibilit?t? Zun?chst müssen Sie eine Struktur mit Tabellen erstellen, um die Verwendung von Div -Flex- oder Netzlayout zu vermeiden. Zweitens müssen alle Stile eingefügt werden und k?nnen sich nicht auf externe CSS verlassen. Dann sollte das Bild mit ALT -Beschreibung hinzugefügt werden und eine ?ffentliche URL verwenden, und die Schaltfl?chen sollten mit einer Tabelle oder TD mit Hintergrundfarbe simuliert werden. Schlie?lich müssen Sie die Details zu mehreren Clients testen und anpassen.

Wie kann ich mit Formularen in HTML ohne Server umgehen? Wie kann ich mit Formularen in HTML ohne Server umgehen? Jul 09, 2025 am 01:14 AM

Wenn es keinen Backend-Server gibt, kann die Einreichung von HTML-Formular weiterhin über Front-End-Technologie oder Drittanbieterdienste verarbeitet werden. Zu den spezifischen Methoden geh?ren: 1. JavaScript verwenden, um die Einreichungen von Formulareingaben abzufangen, um die Eingabeüberprüfung und das Benutzerfeedback zu erhalten. Die Daten werden jedoch nicht bestehen. 2. Verwenden Sie serverlose Formulardienste von Drittanbietern wie F?rse, um Daten zu sammeln und E-Mail-Benachrichtigungs- und Umleitungsfunktionen bereitzustellen. 3.. Verwenden Sie LocalStorage, um tempor?re Clientdaten zu speichern, die zum Speichern von Benutzerpr?ferenzen oder zum Verwalten von Anwendungsstatus einseitig geeignet sind, jedoch nicht für die langfristige Speicherung vertraulicher Informationen geeignet sind.

Was sind die am h?ufigsten verwendeten globalen Attribute in HTML? Was sind die am h?ufigsten verwendeten globalen Attribute in HTML? Jul 10, 2025 am 10:58 AM

Klasse, ID, Stil, Daten und Titel sind die am h?ufigsten verwendeten globalen Attribute in HTML. Die Klasse wird verwendet, um einen oder mehrere Klassennamen anzugeben, um die Stileinstellung und JavaScript -Vorg?nge zu erleichtern. ID bietet eindeutige Kennungen für Elemente, die für Anker -Sprünge und JavaScript -Kontrolle geeignet sind. Durch den Stil k?nnen Inline-Stile hinzugefügt werden, geeignet für ein vorübergehendes Debuggen, aber nicht für die Verwendung von gro?em Ma?stab empfohlen. Data-Properties werden verwendet, um benutzerdefinierte Daten zu speichern, was für die Interaktion mit Front-End- und Back-End-Interaktion geeignet ist. Der Titel wird verwendet, um Mausover -Eingaben hinzuzufügen, aber sein Stil und sein Verhalten werden durch den Browser begrenzt. Eine angemessene Auswahl dieser Attribute kann die Entwicklungseffizienz und die Benutzererfahrung verbessern.

Implementierung des nativen faulen Ladens für Bilder in HTML Implementierung des nativen faulen Ladens für Bilder in HTML Jul 12, 2025 am 12:48 AM

Native Lazy Loading ist eine integrierte Browserfunktion, die das faule Laden von Bildern durch Hinzufügen von Loading = "Lazy" zum Tag hinzufügen kann. 1. Es erfordert keine Bibliotheken von JavaScript oder Drittanbietern und wird direkt in HTML verwendet. 2. Es ist für Bilder geeignet, die nicht auf dem ersten Bildschirm unterhalb der Seite, die Scrolling-Add-Ons und gro?e Bildressourcen angezeigt werden. 3. Es ist nicht für Bilder mit dem ersten Bildschirm oder Display geeignet: keine; 4. Bei der Verwendung sollte ein geeigneter Platzhalter festgelegt werden, um Layout -Jitter zu vermeiden. 5. Es sollte das Laden von Responsive Bild in Kombination mit SRCSet- und Gr??enattributen optimieren. 6. Kompatibilit?tsprobleme müssen berücksichtigt werden. Einige alte Browser unterstützen es nicht. Sie k?nnen durch Merkmalserkennung verwendet und mit JavaScript -L?sungen kombiniert werden.

Wie füge ich ein Video als Hintergrund in HTML hinzu? Wie füge ich ein Video als Hintergrund in HTML hinzu? Jul 08, 2025 am 12:03 AM

Um einer Webseite einen Videohintergrund hinzuzufügen, besteht der Schlüssel darin, HTML -Tags korrekt zu verwenden und relevante Attribute zu optimieren. 1. Verwenden Sie Tags als Hintergrund und verwenden Sie die CSS -Positionierung, um die Seite oder den lokalen Bereich zu füllen. 2. Das Videoformat wird bevorzugt. 3. Fügen Sie ged?mpfte und PlaySInline -Attribute hinzu, um eine automatische Wiedergabe auf der mobilen Seite zu gew?hrleisten. 4. Steuern Sie die Videogr??e, um die Ladegeschwindigkeit zu optimieren, und es wird empfohlen, sie bei zehn MB zu halten. 5. Schleifen hinzufügen, um eine nahtlose Schleifenwiedergabe zu erreichen. 6. Es kann flexibel auf Vollbild- oder Lokalbl?cke angewendet werden, und unterschiedliche Effekte werden durch Anpassen der Beh?ltergr??e und Positionierungsmethode erzielt. Die obigen Schritte k?nnen einen stabilen und sch?nen Videohintergrund erreichen.

Wie mache ich ein reaktionsschnelles Iframe? Wie mache ich ein reaktionsschnelles Iframe? Jul 09, 2025 am 01:39 AM

Um Iframes reagieren zu lassen, besteht der Kern darin, CSS zu verwenden, um das Seitenverh?ltnis zu steuern und ihn mit dem Verpackungsbeh?lter zu kombinieren, um eine Anpassung zu erreichen. 1. Verwenden Sie Polstertechniken, um Containerboxen mit festen Proportionen zu erstellen. H?ufige Verh?ltnisse wie 16: 9 entsprechen Padding-Top56,25%, 4: 3 entsprechen 75%und 1: 1 entsprechen 100%; 2. Stellen Sie die Iframe-Breite auf 100% ein und verwenden Sie die absolute Positionierung, um den Container zu füllen, oder verwenden Sie das Aspektverh?ltnisattribut, um den Anteil beizubehalten. 3. Steuern Sie bei der Verarbeitung von Drittanbietern eingebetteter Inhalte, steuern Sie das Verh?ltnis über Containerverpackung und stellen Sie sicher, dass das zul?ssige Attribut für das zul?ssige Bildschirm hinzugefügt wird, um die Vollbildwiedergabe in mobilen Terminals zu unterstützen. Beherrschen Sie die Einstellungen für Container und Verh?ltnisse, um die Reaktionsf?higkeit des Iframe zu erkennen

See all articles