雅虎面試題-你真的瞭解HTML嗎?
- <P> 哥寫的不是HTML,是寂寞。<br><br> 我說:<br>不要迷戀哥,哥只是一個傳說
這是原來雅虎一道筆試題(文字變了變),用了很多年了,還沒有一個人完全答對過。
============== 解答部分 ==============
出這道題的動機是,太多人覺得HTML太簡單,但它恰恰又是前端開發中最基礎最重要的部分。HTML結構設計的合不合理,直接影響到程式碼易不易維護,靈不靈活,同時事關網頁效能,協作效率。碰到不少人認為前端開發就是javascript開發,大錯特錯啊。javascript, html, css這三個前端開發的基礎支柱,性質完全不同又緊密關聯,對它們的正確理解,合理應用是專業與非專業的區別。有些後端工程師可以寫出很漂亮的JS,但他們真的不懂怎麼合理的把js, html, css結合起來應用。對html的準確把握,不像學一般的程式語言那樣,而是建立在豐富實踐經驗和體會的基礎上,是前端的工程師的基本功。
這不是一道較真題或是裝逼題,正經一道“畫雞蛋”的題,考的是基本功。程式碼如其人,對一行程式碼的理解足以反映出他的前端開發素養。
言歸正傳。這道題的考點:
考點1:html和 xhtml的區別
這行程式碼在html 4.01 strict下是完全正確的,在xhtml 1.0 strict下是錯誤一堆的。所以明顯是一個考點。在xhtml下所有標籤是閉合的,p,br需要閉合, 標籤不允許大寫,P要小寫。同時nbsp和br必須包含在容器裡。html下這些都不是錯。p在html裡是可選閉合標籤,是可以不用閉合的。
這個考點告訴你xhtml是多麼苛刻。這是基本考點,答對,你能拿到60分。
考點2:考樣式分離
用nbsp控制縮排是不合理的。應該用CSS幹這事。所以應該刪掉nbsp
考點3:合理使用標籤
br是強制折行標籤,p是段落。原題用連續的br製造兩個段落的效果,效果是達到了,但顯然用的不合理,段落間距後期無法再控制。正確的做法是用兩個p表現兩個段落。“我說”後面是正常的文字折行用br是合理的。
上面全答對,你就能拿到100分。
對原題改進的結果:
html 4.01:
- <p>哥寫的不是HTML,是寂寞。</p>我說:<br /> 不要迷戀哥,哥只是一個傳說
xhtml 1.0:
- <p>哥寫的不是HTML,是寂寞。</p><p>我說:<br /> 不要迷戀哥,哥只是一個傳說</p>
加分:合理的用語義化標籤
在前面的基礎上合理的用語義化標籤,對內容進行必要的標記,是加分的。但過度的使用標籤,就畫蛇添足了。如“我說”的話,可以用q標籤標註。
-
<p>哥寫的不是HTML,是寂寞。</p>
- <p>我說:<br /> <q>不要迷戀哥,哥只是一個傳說</q></p>
我覺得這就夠了,如果再進一步,“我”用cite標註,“HTML” 用abbr或acronym標註(至於再討論abbr和acronym的區別就太較真了),也OK。再複雜就沒必要了。
-
<p> 哥寫的不是<abbr title=”Hyper Text Markup Language”>HTML</abbr>,是寂寞。</p>
- <p><cite> 我</cite>說:<br /> <q>不要迷戀哥,哥只是一個傳說</q></p>
相關推薦
雅虎面試題-你真的瞭解HTML嗎?
有這麼一段HTML,請挑毛病: <P> 哥寫的不是HTML,是寂寞。<br><br> 我說:<br>不要迷戀哥,哥只是一個傳說 這是原來雅虎一道筆試題(文字變了變),用了很多年了,還沒有一個人完全答對過。======
leetcode微軟,亞馬遜,雅虎面試題206. Reverse Linked List的java實現
這是一道道簡單的連結串列題,但是有很多大公司都有出這道面試題,可見基礎題在面試中也很重要 這裡有兩種解法,雖然大體相同,但是耗時不同 Reverse a singly linked list. 第一
雅虎面試題─把十進位制數(long型)分別以二進位制和十六進位制形式輸出,不能使用printf系列
程式設計實現:把十進位制數(long型)分別以二進位制和十六進位制形式輸出,不能使用printf系列。 實現了unsigned long型的轉換。 // 十進位制轉換為二進位制,十進位制數的每1bit轉換為二進位制的1位數字 char *int_to_bin(unsigne
雅虎面試題─有兩個雙向迴圈連結串列A,B,知道其頭指標為:pHeadA,pHeadB,請寫一函式將兩連結串列中data值相同的結點刪除
有雙向迴圈連結串列結點定義為: struct node { int data; struct node *front,*next; }; 有兩個雙向迴圈連結串列A,B,知道其頭指標為:pHeadA,pHeadB,請寫一函式將兩連結串列中data值相同的結點刪
校園網路安全CTF 第一題 和 你真瞭解我嗎?
第一題: 需要先找到相應頭(REsponse header中的tips) <?php$flag = "***";if (isset($_GET['repo']))//檢測變數是否設定 { if (strcmp($_GET['repo'], $flag) == 0) //比較兩個
這道javascript 面試題 你必須會
fun prot 試題 concat 作用 val function 運算 return 實現一個函數,運算結果可以滿足如下預期結果: add(1)(2) // 3 add(1, 2, 3)(10) // 16 add(1)(2)(3)(4)(5) // 15 話不多說
2017年8道php面試題(真題+答案)
php 高級php1、<?php echo count(strlen(“http://php.net”)); ?>的執行結果是? 答案:1 講解:count(var)是用來統計數組或對象的元素個數的。當var是null或者空數組時,結果為0。如果var是普通變量,則返回1。正常情況下返回var中的
Java程序員從阿裏、京東、美團面試回來,這些面試題你會嗎?
Java 程序員 分布式 微服務 後端 最近有很多朋友去目前主流的大型互聯網公司面試(阿裏巴巴、京東、美團、滴滴),面試回來之後會發給我一些面試題。有些朋友輕松過關,拿到offer,但是有一些是來詢問我答案的。 其實本來真的沒打算寫這篇文章,主要是自己得記憶力不是很好,不像一些記憶力強的人
這道Java基礎面試題你真的會嗎?
你咱不往下看,先想想你的答案是什麼? 這裡先來聊聊String的intern()方法是幹什麼的? intern方法是一個native方法,空口無憑,咱們還是可以看看Stirng的原始碼 從方法的註釋咱們可以知道,它的作用: 1:如果字串常量池中已經包含一個等於此Sti
Java程式設計師從阿里拿到offer回來,這些面試題你會嗎?
前不久剛從阿里面試回來,為了這場面試可以說準備了一個半月,做的準備就是刷題和看視訊看書充實自己的技術,話說是真難啊,不過還算順利拿到了offer,有很多面試題我已經記不起來了,這些是當天回家整理好的,下面我來跟大家一起分享一下。 首先我們需要明白一個事實,招聘的一個很關鍵的因素是在給自己找未來的同事,同
Java開發面試題大彙總,年薪30萬的面試題你能答出多少?
最近有很多朋友在問,年後打算跳槽,這兩個月該怎麼準備,針對這些問題,我總結了一套年薪30萬左右Java開發面試題,雖然還落了一下沒寫,但是我感覺完全掌握這些,年薪30萬是沒有問題的,下面來看看這些面試題你能答出多少。 一、Java基礎 1. String類為什麼是fina
這個Java基礎面試題你真的會嗎?
你咱不往下看,先想想你的答案是什麼? 這裡先來聊聊String的intern()方法是幹什麼的? intern方法是一個native方法,空口無憑,咱們還是可以看看Stirng的原始碼 從方法的註釋咱們可以知道,它的作用: 1:如果字串常量池中已經包含一個等於
投行的 15 個多執行緒和併發面試題——你都會嗎?
多執行緒和併發問題已成為各種 Java 面試中必不可少的一部分。如果你準備參加投行的 Java 開發崗位面試,比如巴克萊銀行(Barclays)、花旗銀行(Citibank)、摩根史坦利投資公司(Morgan Stanley),你會遇到很多有關多執行緒的面試題。多執行緒和併發
這樣的面試題你會嗎
面試題1:斯密斯夫婦握手問題 史密斯夫婦邀請另外四對夫婦就餐,已知他們每個人都不和自己握手,不和自己的配偶握手,且不和同一個人握手一次以上。在大家見面握手寒暄後,史密斯問大家握手了幾次,每個人的答案都不一樣。 問:史密斯太太握手幾次? 1.所涉及的知識點 ·
Scrum Master 面試題 – 你必須知道的22個Scrum基礎知識
以下的22個問題基本上涵蓋了Scrum所涉及的內容,如果你能夠正確回答出所有問題,那麼你已經具備了作為一名Scrum Master的基本素質;當然,作為一名合格的Scrum Master,更重要的是你的經驗,因為Scrum Master更多的需要和人打交道,很多實際問題的處理方式是必須在實踐中才能體會的
Java程式設計師臥底從阿里、京東、美團面試回來,這些面試題你會嗎?
面試,難還是不難?最終結果好還是不好?取決於面試者的底蘊(氣場+技能)、心態和認知以及溝通技巧。而一些主流的大型網際網路公司面試(阿里巴巴、京東、美團、滴滴)更是需要你在面試時展現出自己的能力,從而獲得面試官的欣賞和肯定。 而程式設計師在應聘時更是需要經歷層層面試。俗話說,磨刀不誤砍柴工
Java程式設計師金三銀四求職季,這些多執行緒面試題你會嗎?
多執行緒是Java技術面試中面試官比較喜歡問的問題之一。在這裡,從面試的角度列出了大部分重要的問題,但是作為一個程式設計師仍然應該牢固的掌握Java多執行緒基礎知識來對應日後碰到的問題。 1. 程序和執行緒之間有什麼不同? 一個程序是一個獨立(self contain
2017已來,最全面試總結——這些Android面試題你一定需要
三金四銀,又到了一年一度的跳槽季。也許有不少Android程式設計師開始摩拳擦掌蠢蠢欲動了。結合以往自己的經歷,今天給大家總結下Android面試題,希望有幫助。 本文轉自:(http://www.jianshu.com/p/a22450882af2) 1:Activ
[乾貨]2017已來,最全面試總結——這些Android面試題你一定需要
前言 來年發完年終獎。也許有不少Android程式設計師開始摩拳擦掌蠢蠢欲動了。結合以往自己的經歷,今天給大家總結下Android面試題,希望有幫助。 01Activity生命週期? 這幾乎是個老少咸宜,永遠不會過
python經典面試題:想找工作?這些面試題你會了嗎?
輸出結果 classes readline 應用 all 就是 last 如果 合數 ? 前言 什麽?你要去找工作?先別急著找工作,先把下面的python面試題先給看了吧,不然你就只是去面試而不是找工作。話說不打沒準備的仗,下面這些基本的面試題都不會你怎麽可能找到工作呢