介紹 WebAssembly

了解為何 WebAssembly 是未來 Web 平台中非常重要的一部分 WebAssembly 是當今非常熱門的話題。 WebAssembly 是一種用於網頁的新型低階二進制格式。它不是你要編寫的程式語言,而是其他較高層次的語言(目前有 C、Rust 和 C++)經過編譯後才能運行於瀏覽器中。 它被設計為快速、內存安全和開放的。 你將不會直接編寫 WebAssembly 代碼(也稱為 WASM),而是使用其他語言來編譯成 WebAssembly 低階格式。 它是繼 90 年代 JavaScript 首次出現後第二種能被網頁瀏覽器理解的語言。 WebAssembly 是由W3C WebAssembly 工作組開發的標準。現在,所有現代瀏覽器(Chrome、Firefox、Safari、Edge、移動瀏覽器)和 Node.js 都支援它。 我有說 Node.js 嗎?是的,因為 WebAssembly 誕生於瀏覽器,但 Node.js 自從 8 版本起就已經支援了,你可以使用除 JavaScript 以外的任何語言來構建 Node.js 應用程序的部分組件。 多虧了 WebAssembly,不喜歡 JavaScript 的人或者喜歡使用其他語言的人現在有了選擇,可以使用不同於 JavaScript 的語言編寫 Web 應用程序的部分組件。 請注意:WebAssembly 不打算取代 JavaScript,它只是一種將其他語言編譯到瀏覽器中的方式,用於增強以這些語言編寫的應用程序的功能或者重用現有的應用程序組件。 JavaScript 和 WebAssembly 代碼可以互相操作,為網頁提供出色的用戶體驗。 對於安全性的考慮 WebAssembly 代碼運行在一個沙盒環境中,擁有和 JavaScript 相同的安全策略,瀏覽器會確保遵守同源策略和權限策略。 如果你對此感興趣,我建議你閱讀WebAssembly 中的內存以及WebAssembly 的安全文檔。 性能方面的考慮 WebAssembly 的設計目標是追求速度。它的主要目標是變得非常非常快。它是一種編譯語言,這意味著在執行之前,程序將被轉換成二進制形式。 它可以達到接近本地編譯語言(如 C)的性能。...

介紹 Yeoman

Yeoman 是一個非常酷的工具,是許多值得尊敬的開發人員共同努力的結晶,旨在簡化網絡應用項目的設置和管理。 警告:此文章為舊文,可能不符合最新技術狀態。 Yeoman 是一個很有意思的工具,它的最重要的幾個特點包括: 它建立在穩定的工具之上,提供了簡單易用的接口,方便快捷地使用它們,而不需要重複發明輪子。 它是一個用於最受歡迎框架的腳手架工具,支持 Bootstrap、Ember.js、Angular.js、Backbone.js 等等。 借助 Bower(一個類似 Jam、Volo、Ender 的前端包管理工具,但更好),它提供了快速安裝、卸載和更新幫助功能,支持常用庫,如 jQuery、Underscore.js、Modernizer、Mocha、Backbone,以及任何已經存在的 Bower 包。 它內置測試功能,使用 mocha 在命令行中執行 PhantomJS(無界面瀏覽器)實例,或者在瀏覽器中打開 test/index.html 頁面進行測試。 它提供了一個 Python HTTP 服務器,用於測試代碼。當 web 服務器運行時,它會監聽項目中文件的變化,在你打開的頁面依賴於已更改的文件時重新加載瀏覽器。因此,你在開始編寫前端代碼之前,甚至不需要準備後端。 構建 Yeoman 項目非常簡單。 首先,安裝它: $ curl -L get.yeoman.io | sh 然後進入一個空目錄,輸入以下命令: $ yeoman init 這樣,它會出現歡迎界面,以及一個列表選項,用於向項目添加內容。 你可以通過以下命令開始一個新的 Ember.js 項目: $ yeoman init ember 這將創建一個新的 Ember.js 應用程序,創建一組基本的模型、控制器和視圖/模板(以及它們的目錄),為所有依賴項添加腳本標籤(包括 jQuery、Handlebars),並根據 HTML5 boilerplate 項目 http://html5boilerplate.com/ 創建一個 index.html 文件。 你可以使用 Yeoman 來啟動項目、更新項目中的依賴、運行測試等等。 當項目準備好部署時,你可以利用 Yeoman 中內置的 Grunt https://github.com/cowboy/grunt,通過執行 “yeoman build” 命令,對項目進行語法檢查、編譯(用於生產)、連接和壓縮腳本和樣式,以及壓縮圖片等操作。

介紹Arduino

對Arduino電子平台的總覽 Arduino是業餘電子生態系統中的一項突破性技術。 所謂的突破性並不是指它引入了一個強大的微處理器或任何相關的技術。 它實際上創造了整個行業,一個運動,在此之前並不存在。 我所說的是創客運動。在Arduino之前,電子學並不像今天這樣有趣且容易學習,周圍也沒有太多資源。我在技術高中和米蘭理工學院學習了多年的電子學,但那是一些非常嚴肅、理論性的東西,幾乎沒有程式編碼和樂趣。 Arduino誕生於意大利,來自Ivrea,這個城市也因為創造了1965年的第一台個人電腦的公司Olivetti而聞名。 Arduino從一開始就特別設計成一個學習設備。這一個簡單的事實影響了原始Arduino核心團隊所做的幾個設計選擇。 我不會深入探討歷史細節,但你可以在維基百科上自由查看它們。 Arduino的關鍵成功因素在於它完全是開源的,並且它是最早一批開源項目。硬體是開源的,軟體也是開源的。 例如,最新的Arduino Uno板,Arduino Uno Wifi Rev2的電路圖可以在線上找到。這很酷,因為你可以自己建立Arduino,如果你想的話。公司可以製造和銷售自己的Arduino克隆版,而且他們已經這樣做了。我第一個Arduino是從一家叫做Elegoo的公司買的,他們提供了令人驚喜而又便宜的套裝,裡面有很多元件和教程可以讓你入門。 此外,周圍有一個完整的工具、庫和教育資源生態系統,使它取得了巨大的成功。在此之前,像這樣的開發板要麼很難獲得,材料也太過專業,更適合技術人員而不是學生。Arduino改變了一切。官方網站https://www.arduino.cc/上充滿了學習材料、示例、教程,還有一個活躍的項目中心和社區論壇。此外,Arduino還建立了一個IoT雲平台,讓你可以將設備連接到網絡。 隨著時間的推移,Arduino團隊推出了幾款不同的開發板:Arduino Uno、Arduino Mega、Arduino Diecimila、Arduino Robot、Arduino Nano、Arduino Micro、Arduino Leonardo、Arduino MKR等等。 每個開發板都有自己的用例。例如,Arduino Nano和Arduino Micro非常適合物聯網、可穿戴設備和小型裝置。Arduino Mega具有比其他任何板子更多的記憶體和I/O引腳。 截至今天,Arduino Uno開發板是目前最受歡迎的學習板,它包含在許多套件中,並且被用於大量的教程中。 Arduino MKR WiFi 1010開發板在物聯網中得到了廣泛的應用,因為它具有內置的WiFi和藍牙功能。 Arduino沒有操作系統,它一次只運行一個程序。 你不必擔心任何其他事情,因為Arduino上除了你的程式之外沒有其他東西。 大多數Arduino開發板甚至沒有網絡連接,出廠時如此。有些開發版是有網絡連接的,比如Arduino Uno WiFi rev 2或Arduino MKR WiFi 1010。 程序加載之後,只要Arduino通過USB或電源端口通過交流-直流電源線或電池供電,它就會啟動。 這意味著一旦你加載了程序,你可以將Arduino放在山上,配備太陽能電池板和電池,它將在有電力的情況下一直運行。 它只能運行為Arduino平台編譯的程序,這主要是指使用Arduino語言編寫的程序,該語言是C++語言的一種帶有一些便利功能的版本,使初學者能夠輕松上手。 但你不僅僅局限於此。如果你可以忍受Arduino連接到計算機的USB端口(或者由樹莓派驅動連接),你可以使用Johnny Five項目在其中運行Node.js代碼,這相當酷。其他語言也有類似的工具,例如pyserial和Gobot。 Arduino有什麼用處? 首先,它非常適合學習電子學。 此外,當你想為Arduino編譯一個程序,連接一個電池或電源連接器並將其放置在某個地方運行,並且與傳感器和其他與現實世界接口的有趣的東西進行玩耍時,Arduino十分強大。 例如,我會使用Arduino來為我的自動澆水植物、追蹤室外溫度或控制家居自動化設備等等。 在不久的將來,我將製作很多項目,並將在這裡發布教程,以展示我如何構建這些東西。

介紹GraphQL

GraphQL是一種用於API的查詢語言,並且還有一組用於執行查詢的伺服器端運行時(在不同的後端語言中實現)。 GraphQL是什麼 它是如何工作的 GraphQL查詢 字段和參數 別名 片段 GraphQL變量 變量必填 為變量指定默認值 GraphQL指令 @include(if: Boolean) @skip(if: Boolean) 什麼是GraphQL GraphQL是API設計中的新領域,以及我們建立和消費API的方式。 它是一種查詢語言,並且還有一組用於執行查詢的伺服器端運行時(在不同的後端語言中實現)。它不依賴於特定的技術,但您可以在任何語言中實現它。 它是一種與REST(REpresentational State Transfer)API直接競爭的方法,就像REST一開始與SOAP競爭一樣。 正如我們將要看到的,它與REST非常不同。它為API設計創造了一個全新的維度。 GraphQL是由Facebook開發的,就像近來撼動JavaScript世界的許多技術一樣,例如React和React Native,於2015年公開推出,盡管在此之前,Facebook在內部使用了幾年。 許多大公司都在採用GraphQL,包括GitHub、Pinterest、Twitter、Sky、紐約時報、Shopify、Yelp和許多其他公司。 當GitHub決定使用該技術實施其API的v4版本時,我首次接觸到GraphQL,並且加入了他們的測試程序。從那時起,我發現它在許多方面都是一個遊戲改變者。 它是如何工作的 GraphQL從您的伺服器暴露單個端點。 您可以使用特殊的查詢語言語法將查詢發送到該端點。該查詢只是一個字符串。 伺服器通過提供一個JSON對象來響應查詢。 讓我們看一個第一個查詢的示例。該查詢獲取id=1的人的名稱: GET /graphql?query={ person(id: "1") { name } } 或: { person(id: "1") { name } } 我們將獲得如下JSON回應: { "name": "Tony" } 讓我們增加一些複雜性:我們從地址(address)對象中提取人的名稱和所在的城市。我們不關心地址的其他詳細信息,所以伺服器不會將它們返回給我們,因為我們並沒有要求它們: GET /graphql?query={ person(id: "1") { name, address { city } } } 或 { person(id: "1") { name address { city } } } 我們得到如下的回應:...

介紹Redis

Redis 是一個令人驚嘆的開源軟體,可以滿足網絡應用程式的各種需求。 Redis 是一個 NoSQL 資料庫,特別是一個鍵值儲存庫。它可以使用任何編程語言,因為它不是特定於 JavaScript 的技術 - 它是用 C 編寫的。 我們可以存儲值並將它們與鍵關聯起來,然後稍後檢索它們。 它的一個特點是高性能。高性能是由其主要特點之一提供的:它是一個內存資料庫。數據是保存、存儲和訪問在內存中,而不是寫入到資料庫。 大多數資料庫將數據存儲在磁盤上,並通過在內存中維護一組緩存來進行優化。 Redis 卻相反:它將數據保存在內存中。 默認情況下,Redis 將存儲的資料集快照保存到磁盤上,您可以配置其詳細信息以及數據的存儲位置。 Redis 是我最喜歡的工具之一,因為它的靈活性。您可以在如何存儲和管理資料存儲方面有很多自由度,並且可以根據您的需求以多種不同的方式使用它。 這也是因為它是一個 NoSQL 資料庫,這意味著它與 PostgreSQL 或其他 SQL 和基於架構的資料庫相比非常靈活。 它通常用作快取儲存機制,但也用作消息代理器,一種在不同進程和應用程式之間通訊的方式。 在這裡繼續閱讀: 如何安裝 Redis Redis 的第一步 Redis 集合 Redis 列表 Redis 排序列表 如何使用 Redis 哈希 Redis 發布/訂閱

介紹Yarn

Yarn是一個JavaScript套件管理器,是npm的直接競爭對手之一,同時也是Facebook的開源項目之一。 Yarn介紹 安裝Yarn 管理套件 初始化新項目 安裝現有項目的依賴項 本地安裝套件 全局安裝套件 本地安裝開發依賴項 移除套件 檢查許可證 檢查依賴項 升級套件 如何升級Yarn Yarn介紹 Yarn是一個JavaScript套件管理器,是npm的直接競爭對手,也是Facebook的開源項目之一。 它與npm套件相容,因此它有一個重要的優勢,可以無縫取代npm。 在剛發布時,它由於並行下載和緩存,速度比npm快得多,但現在npm已經追趕上它的許多功能,所以我推薦使用npm。 工具最終會收斂到一組功能,以保持它們在相同水平上,以保持相關性,因此我們可能會在未來的npm中看到這些功能 - 競爭對象對用戶來說是好的。 安裝Yarn 雖然你可以使用npm安裝Yarn(npm install -g yarn),但Yarn團隊不建議這樣做。 系統特定的安裝方法在https://yarnpkg.com/en/docs/install列出。例如,在macOS上,你可以使用Homebrew運行以下命令: brew install yarn 但每個操作系統都有自己首選的包管理器,這將使安裝過程非常順暢。 最終,您將在您的shell中可以使用yarn命令: 管理套件 Yarn將其依賴項寫入名為package.json的文件中,該文件位於您的項目的根文件夾中,並將依賴項文件存儲到node_modules文件夾中,就像過去使用npm一樣。 初始化新項目 運行 yarn init 將啟動一個交互式提示,幫助您快速啟動一個項目。 安裝現有項目的依賴項 如果您已經有一個包含依賴項列表的package.json文件,但是尚未安裝套件,運行以下命令: yarn 或者 yarn install 開始安裝過程。 本地安裝套件 使用以下命令將套件安裝到項目中: yarn add package-name 全局安裝套件 yarn global add package-name 本地安裝開發依賴項 yarn add --dev package-name 相當於npm的--save-dev標誌 移除套件 yarn remove package-name 檢查許可證 在安裝許多依賴項時,這些依賴項可能還有很多依賴項,您會安裝許多您對其使用的許可證一無所知的套件。 Yarn提供了一個便利的工具,可以打印出您所有依賴項的許可證: yarn licenses ls 它還可以自動生成一個免責聲明,其中包含您使用的所有項目的所有許可證:...

內建LED

Arduino板上有一個小工具: 內建LED。 它在旁邊有個字母L標示。在Arduino Uno板上,它靠近腳位#13: 在Arduino MKR 1010 WiFi板上,它靠近5V輸出腳位: 這個LED通常連接到數字I/O腳位#13上,但在某些板上,如Arduino MKR系列,它連接到腳位#6。 無論如何,你可以使用LED_BUILTIN常數引用正確的腳位,Arduino IDE會根據你編譯的板子正確對應到該腳位。 要使LED亮起來,首先需要在setup()函式中將腳位設置為輸出模式: pinMode(LED_BUILTIN, OUTPUT); 然後可以發送HIGH信號給它: digitalWrite(LED_BUILTIN, HIGH); 或者 digitalWrite(LED_BUILTIN, 1); 下面是一個簡單的程式,將使內建LED每秒閃爍一次: void setup() { pinMode(LED_BUILTIN, OUTPUT); } void loop() { digitalWrite(LED_BUILTIN, HIGH); delay(1000); digitalWrite(LED_BUILTIN, LOW); delay(1000); }

內容為王

內容很重要。內容是最重要的事情,在您的博客中。 讓我們討論一些我認為是以內容為中心的博客策略的基本支柱。 寫給你的讀者 假設您擅長烹飪。寫一些關於您的手藝的內容:烹飪技巧、材料、食譜,與其他熱愛烹飪的人交流。您喜歡編織?為其他愛好編織的人寫作,分享編織的技巧和您學到的新知識。喜歡狗?創建一個針對狗主人的博客。 無論您做什麼,重要的是您找到一群對某個主題和您一樣熱情的人,並且為他們寫作。 如果您的所寫對其他人沒有價值,那麼您寫的內容就沒有價值。當然,您可以寫一些只有您自己欣賞的內容。但是,花這麼多時間和精力創作博客文章就沒有意義了,不是嗎? 專注於創造價值 一旦您確定要寫給誰,專注於創造價值對您來說至關重要。 價值可以以很多不同的形式呈現,當然了。可以是如何文章,可以是分享您對某些技術的具體經驗,可以是教授他人您餵飼狗的生肉飲食法等。 可以是詳細介紹您最近的旅行和您所參觀的地方,以便當有人在組織假期時尋找提示時,他們可以找到您寶貴的信息。 沒有固定的規則,會產生價值的方式豐富多樣。 以下是我為我的博客讀者創造價值的方法:我創建易於理解的入門級教程。我在撰寫時不以專家的角度思考。 為了做到這一點,我會學習一些新的東西,所以我對它不是專家,並且創建了一個實用指南。 作為專家,很難為初學者撰寫有關我們所擅長的東西的文章。這是因為我們忘記了什麼是初學者,我們做出了太多的假設,忘記提到理解一個主題所必不可少的基本事項。 有時候,我會描述我在編寫某個編程項目期間剛解決的問題。我的記憶非常新鮮,我還記得出現問題的感覺,所以我可以很清楚地描述它。 有時我也會撰寫一些關於作為一名開發人員的經驗、常見挑戰或者生產力技巧等不太具體的文章。這些通常是我讀者們最讚賞的文章。 專注於提供有用的解決方案 您的文章必須解決一個問題:您博客上的每篇文章都必須有一個非常具體的目標。 這是關鍵,文章的標題必須完美地解決問題並提供解決方案。 當人們搜索如何解決那個問題時,您希望自己的文章出現在最頂部的搜索結果中。 而且,您的內容必須非常好。 正是他們所在尋找的內容。 專注於創建最好的、最有價值的內容。 撰寫能幫助過去的自己的博客文章 我最喜歡的事情之一就是撰寫一篇包含我剛解決的問題的解決方案的博客文章。 其他人解決問題然後前進。 如果您花10分鐘記錄下您解決問題的過程,您就在幫助那些可能在未來一周、一年或者十年內遇到同樣問題的人們。 他們會感謝您撰寫了對他們有幫助的內容。 也許,甚至在未來,您也能幫助自己。 有時候,我搜索一個問題,結果找到了我自己在幾個月前寫的文章。我完全忘記了自己寫過這篇文章。 不要寫關於這些內容 我建議您不要寫一些對他人無幫助的內容。 在這方面很難劃定一條界線,但您應該考慮自己所寫的內容。 不要將博客視為日記。您可以像記日記一樣使用它,發布您的抱怨、意見或者晚餐吃了什麼。 但是,這樣真的對他人有幫助或創建價值嗎? 就個人而言,我只嘗試寫一些我認為對任何人都有幫助的內容。即使一篇文章只幫助一個人,對博客來說也是一篇好文章。 傳授您所知道的一切 我從Nathan Barry那裡學到這一句格言或座右銘。他因他的書《權威》和作為一個博客工具ConvertKit的創始人而聞名。 他認為建立一個觀眾是創建成功企業的秘訣,我真的相信這一點。而建立觀眾的最好方法就是在某種程度上與他人分享您所知道的一切。 他通過書籍的形式做到了這一點,首先關於設計,因為那是他的專長。然後,他將他銷售這些書的經驗寫成了另一本書。 我生活的方式就是教學。而且,由於任何有限的時間點上,我所知道的事情是有限的,我不得不轉向教授我所學到的一切。 我發現,很多人喜歡我談論事情的方式,以及我以初學者的角度進行思考對我來說非常有益。 您的方法可能不同,但“教曉自己所知道的一切”這個口號是您需要認真思考的一個口號。tags:內容,價值,教學,博客

公園的步道系統

步道系統是指某個區域周圍的一組步道網絡。它可以是徒步步道、雪地摩托步道等等。 就像步道系統為你提供了一張你曾經去過和將要去的地方的地圖一樣,你的企業的步道系統是其他人導航你的宇宙的地圖。 我來舉個例子,說明一下我的企業步道系統。 我有一個博客,我每天在這個博客上寫作。很多人通過谷歌和其他站點找到這個博客,這些站點上有人鏈接到我過去寫的博客文章。 所有這些都是從外部世界帶到我步道系統開始的道路。 我無法控制每天有多少人出現在步道系統的門口。 我能控制的是步道是否乾淨、整潔,是否值得一遊。它是否讓人感到親切,是否便於快速訪問。 不同種類的人出現在步道上。有些人對他們看到的東西不感興趣,他們想象的東西可能不同。也許他們的鞋子不合適,或者今天的天氣不太好。 其中很多人會轉身離開,再也不回來。 然而,其中一部分人會喜歡他們看到的,並繼續沿著步道進入公園。 他們喜歡閱讀我寫的文章。我解決了他們的問題。他們收藏了我的名字。他們記得我的名字。 他們沿著步道行走,直到他們決定我的電子書值得一觀。我過去4年寫了一系列免費電子書,即2018、2019、2020、2021年。目前總共有14本書。 這就像在步道上有14個可以過夜的小木屋。過夜是免費的,我只需求訪客提供他們的電子郵件地址。 當他們給我他們的電子郵件地址時,我們建立了第一次真正的聯繫。每天有太多人出現在步道系統的門口,但只有很少數達到通過電子郵件聯繫的程度。 那些留下他們電子郵件的人是我們的第一個朋友圈。 步道系統很廣闊,每週都有很多事情發生。我並不經常能夠與每一位朋友聊天,但我每週都會寄一張明信片和一小段註釋。 所以,即使你完成了閱讀我的書,你還會記得我和你在公園的住宿。 日子一天天過去,夏天結束,公園的樹木換上了彩色的葉子。 每天仍然有很多遊客來到,因為即使下雪的時候,公園還是美麗的。當冬天來臨時,我會為滑雪和在雪地中散步準備特別的路徑。 我偶爾會進行一些冒險,並告訴你我學到了什麼。 編程和用代碼創作始終是一個有趣的手藝,一種藝術,一個不斷發現的過程。 晚上,我在我的小木屋裡整理我所學的一切,以便讓新手很容易找到自己的道路。 有時我會組織一個大型聚會。我可能每年組織幾次。有些聚會時間較短,我稱之為大師班。那時我會邀請你進來,我們將一起深入學習一個特定的主題,比如React或JavaScript。 有些則更長,持續幾個月。那些是訓練營。那些是我作為初學者的旅程,我會確保你在未來完全配備好。為你的職業生涯做好準備。 有時我也會打開收音機,發送一些小更新,我們稱之為推特。主要只是閒聊。但當我有重要的消息時,我總是會通過電子郵件發送通知。 有時我也會做一些有趣的事情,一周後才意識到它是個壞主意。這就是公園及其步道系統的美妙之處。它始終在運動中。沒有什麼是待滯的。它始終在發展。 這就是我在公園做的事情。 如果你喜歡,我會在這裡並且我們將來會有很多的樂趣。

文本的HTML標籤

發現您可以在網頁上使用的各種HTML標籤來顯示文本 p 標籤 此標籤定義了一個文本段落。 <p>一些文本</p> 這是一個塊元素。 在其中,我們可以添加任何內聯元素,例如 span 或 a。 我們不能添加塊元素。 我們不能將 p 元素嵌套到另一個其中。 默認情況下,瀏覽器會對段落進行上下邊距設置。在Chrome中為 16px,但實際值可能各瀏覽器不同。 這使得兩個連續的段落之間產生間距,模擬我們印刷文本中的“段落”。 span 標籤 這是內聯標籤,可用於在段落中創建一個可通過CSS選取的部分: <p>文本的一部分 <span>這裡還有一部分</span></p> br 標籤 此標籤表示換行。它是內聯元素,不需要關閉標籤。 我們使用它在 p 標籤中換行,而不創建新的段落。 與創建新段落相比,它不會添加額外的間距。 <p>一些文本<br>換行</p> 標題標籤 HTML提供了6個標題標籤。從最重要到最不重要,我們有 h1,h2,h3,h4,h5,h6。 通常,一個頁面只會有一個 h1 元素作為頁面標題。然後,根據頁面內容,可能會有一個或多個 h2 元素。 標題,特別是標題的組織,對於SEO也很重要,搜索引擎以各種方式使用它們。 瀏覽器默認情況下會呈現較大的 h1 標籤,並根據 h 數字的增加使元素的大小變小: 所有標題都是塊元素。它們不能包含其他元素,只能包含文本。 strong 標籤 此標籤用於將其中的文本標記為粗體。這是非常重要的,它不是視覺提示,而是語義提示。根據使用的媒介不同,它的解釋也會有所不同。 瀏覽器默認情況下將此標籤中的文本設置為粗體。 em 標籤 此標籤用於將其中的文本標記為強調。與 strong 一樣,它不是視覺提示,而是語義提示。 瀏覽器默認情况下將此標籤中的文本設置為斜體。 引用 blockquote HTML標籤可用於在文本中插入引用。 瀏覽器默認情況下將 blockquote 元素應用了一個邊距。Chrome應用了左右邊距為40px,上下邊距為10px。 q HTML標籤用於內嵌引用。 水平線 雖然不是基於文本,但 hr 標籤經常在頁面內部使用。它表示水平分隔線並在頁面中添加一條水平線。 有助於區分頁面中的各個部分。 代碼塊 code 標籤對於顯示代碼特別有用,因為瀏覽器給它一個等寬字體。...