關於haml和html
下面是乙個html的範例:
你可以看見,這只是標準的html/erb的**片斷。對於你來說,這可能不會那麼刺激審美神經。然而,正如grigsby在他的文章中巧妙地解釋到的,不僅僅裡面會存在許多重複,而且也會出現很多不必要的字元。hampton認為,標識語言應該是賞心悅目的,而且不是所有能賞心悅目的東西都很好,他認為能優雅到讓你開發速度更快,這才是最好的。因此,從這點出發,輸出同樣結果的**片段子haml看起來應該是這樣的:<%= print_date %>
<%= current_user.email %>
<%= h current_user.bio %>
#profile這看起來可能會有點奇怪,不過你不得不承認的是,這**瘦下來好多。值得注意的是,**中大量使用了空格來消除html的閉合標籤,並使用css風格的語法來描述div的id和class,而且消除了難看的.left.column
#date= print_date
#address= current_user.address
.right.column
#email= current_user.email
#bio= h(current_user.bio)
<%= %>
標籤。如果你比較一下兩個版本字元數的大小,你會發現範例中haml版本的字元數是html版本的64%。這就意味著你可以少輸入36%的字元、少讀36%的字元。歸根到底就是少了36%的礙眼的東西。antoine de saint-exupery對haml給於了高度評價:「在沒有什麼可以去除,而不是什麼都加不進去的時候,十全十美的目標就達到了。」
關於emmet和html
emmet是乙個編輯器外掛程式,官方**提供多編輯器支援。我一般使用vim,下面就以vim外掛程式舉例。
首先,按照vim外掛程式文件進行安裝。然後,新建乙個文字檔案,鍵入
html:5
按一下","(先按ctrl鍵+y鍵,然後再按逗號鍵,不同的編輯器有不同的轉化鍵),這一行就立刻變成下面的樣子。
這就是emmet的基本用法:先寫簡寫形式,然後用","將其轉成html**。
emmet支援的簡寫規則,類似於css選擇器(大寫的e代表乙個html標籤):
1. e 代表html標籤。
2. e#id 代表id屬性。
3. e.class 代表class屬性。
4. e[attr=foo] 代表某乙個特定屬性。
5. e 代表標籤包含的內容是foo。
6. e>n 代表n是e的子元素。
7. e+n 代表n是e的同級元素。
8. e^n 代表n是e的上級元素。
請看下面的例子。
p對應的html**為:p#main.item
a[href=
div>p
div+p
p>span^div
維基百科
本文參考:
html簡化haml補全錄
前段時間寫了乙個html簡化成haml的概述,但寫的不全面,隨著我自己用了將近乙個月的實踐我來把它補充一下。首先haml和html最大的區別在於haml簡化了html的寫法,省略了結束符,符號也用 來表示。haml和html各有優劣,html的優點是它能夠很清楚的顯示乙個標籤的開頭和結尾,是整個 頁...
匯程式設計序的簡化寫法
說明 組合語言提供了段定義等的簡化寫法的偽操作,可以使 寫得更簡略一些。要將組合語言作為工作語言使用的同學,可以在這一方面找資料深入一些 案例 輸出hello world 8086 model small data str db hello world stack 20h code start mo...
HTML 中空元素的寫法
html 中空元素的寫法 1。一般元素要寫成 如 2。自閉合元素可以寫為 注意 el 與 之間有乙個空格 如 注 不管怎樣 script 的寫法都是。自閉合元素是指不能有子元素的元素 但可以有屬性 即不能有 child 的 html 標籤。關於標籤是否可以自閉合,區分的原則為 web標準強調的是每個...