亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

目錄
第2行:
第10行:html {-ms-text-size-udjust:100%; - webkit-text ...
獎(jiǎng)勵(lì) - 第11行:身體{Margin:0;}
更多行!
首頁 web前端 css教程 向我解釋Twitter源代碼的前10行

向我解釋Twitter源代碼的前10行

Mar 14, 2025 am 10:27 AM

向我解釋Twitter源代碼的前10行

在過去的幾周中,我一直在我的租賃家具公司Pabio招聘高級全棧JavaScript工程師。由于我們是一支遙遠(yuǎn)的團(tuán)隊(duì),因此我們在Zoom上進(jìn)行采訪,并且我觀察到有些開發(fā)人員在現(xiàn)場編碼或白板采訪方面并不擅長,即使他們擅長工作。因此,相反,我們進(jìn)行了一個(gè)一個(gè)小時(shí)的技術(shù)討論,我向他們詢問有關(guān)網(wǎng)絡(luò)生命力,可訪問性,瀏覽器戰(zhàn)爭以及有關(guān)網(wǎng)絡(luò)的其他類似主題的問題。我一直想問的問題之一是: “向我解釋Twitter源代碼的前十行?!?/strong>

我認(rèn)為這是一個(gè)簡單的測試,可以告訴我很多關(guān)于他們擁有的基本前端知識深度的信息,本文列出了最佳答案。

對于上下文,我共享屏幕,打開Twitter.com,然后單擊“查看源” 。然后,我要求他們逐條排隊(duì),以幫助我理解HTML,他們可以說他們喜歡的話。我還放大了文本更清晰的文字,因此您看不到完整的行,但您會想到一個(gè)主意。這就是它的樣子:

請注意,由于我們的技術(shù)討論是對話。我不希望任何人得到完美的答案。如果我聽到一些正確的關(guān)鍵字,我知道候選人知道這個(gè)概念,并且我試圖將它們推向正確的方向。

第1行:

每個(gè)文檔的源代碼的第一行非常適合這次采訪,因?yàn)楹蜻x人對Doctype聲明的了解非常類似于他們擁有的經(jīng)驗(yàn)。我仍然記得我在XHTML長期Doctype系列中的Dreamweaver時(shí)代,就像Chris在2009年的文章“ Common Doctypes”中所列出的那樣。

完美答案:這是我們始終將其作為HTML文件中的第一行的文檔類型(DOC-TYPE)聲明。您可能會認(rèn)為此信息是多余的,因?yàn)闉g覽器已經(jīng)知道響應(yīng)的MIME類型是文本/HTML。但是,在Netscape/Internet Explorer Days中,瀏覽器的艱巨任務(wù)是弄清楚使用哪種HTML標(biāo)準(zhǔn)來從多個(gè)競爭版本中呈現(xiàn)頁面。

這尤其令人討厭,因?yàn)槊總€(gè)標(biāo)準(zhǔn)都會產(chǎn)生不同的布局,因此采用此標(biāo)簽以使瀏覽器變得容易。以前,Doctype標(biāo)簽很長,甚至包括規(guī)格鏈接(如今像SVG一樣),但是幸運(yùn)的是,簡單的在HTML5中標(biāo)準(zhǔn)化了,并且仍然存在。

也接受:這是Doctype標(biāo)簽,讓瀏覽器知道這是一個(gè)HTML5頁面,應(yīng)該這樣呈現(xiàn)。

第2行:

源代碼中的這一行告訴我候選人是否知道可訪問性和本地化。令人驚訝的是,只有少數(shù)人知道我的采訪中的DIR屬性,但這是一個(gè)關(guān)于屏幕讀者的討論的好問題。即使以前從未使用過它,幾乎每個(gè)人都可以弄清楚lang =“ en”屬性。

完美的答案:這是HTML文檔的根元素,并且所有其他元素都在此中。在這里,它具有兩個(gè)屬性,方向和語言。方向?qū)傩跃哂袕淖蟮接业闹祦砀嬖V用戶代理內(nèi)容所在的方向;對于阿拉伯語等語言,其他值是左轉(zhuǎn)權(quán),或者只是自動將其留在瀏覽器上以找出。

語言屬性告訴我們,此標(biāo)簽中的所有內(nèi)容均以英語為單位。例如,您可以將此值設(shè)置為任何語言標(biāo)簽,甚至可以區(qū)分EN-US和EN-GB。這對于屏幕閱讀器知道要宣布哪種語言也很有用。

第3行:

完美答案:源代碼中的元標(biāo)記是為了提供有關(guān)此文檔的元數(shù)據(jù)。字符集(char-set)屬性告訴瀏覽器要使用的字符編碼,Twitter使用標(biāo)準(zhǔn)的UTF-8編碼。 UTF-8很棒,因?yàn)樗哂性S多字符點(diǎn),因此您可以在源代碼中使用各種符號和表情符號。重要的是要將此標(biāo)簽放在代碼開頭附近,以便瀏覽器遇到這一行時(shí)尚未開始解析過多的文本。我認(rèn)為規(guī)則是將其放在文檔的第一個(gè)千字節(jié)中,但我想說最好的做法是將其放在

的頂部。

附帶說明,出于性能原因(減少加載代碼),Twitter省略了Twitter,但我仍然喜歡明確,因?yàn)樗撬性獢?shù)據(jù),樣式等的清晰住所。

第4行:

完美的答案:源代碼中的此元標(biāo)記是為了在小屏幕上(例如智能手機(jī))上適當(dāng)?shù)爻叽纭H绻€記得原始的iPhone主題演講,史蒂夫·喬布斯(Steve Jobs)在那個(gè)小的4.5英寸屏幕上展示了整個(gè)《紐約時(shí)報(bào)》網(wǎng)站;那時(shí),這是一個(gè)了不起的功能,您必須捏住才能真正閱讀。

現(xiàn)在,網(wǎng)站可以通過設(shè)計(jì)響應(yīng),width =設(shè)備寬度告訴瀏覽器將設(shè)備寬度的100%用作視口,因此沒有水平滾動,但您甚至可以為寬度指定特定的像素值。標(biāo)準(zhǔn)的最佳實(shí)踐是將初始比例設(shè)置為1,將寬度設(shè)置為設(shè)備寬度,以便人們?nèi)匀豢梢苑糯蟆?/p>

源代碼的屏幕截圖并未顯示這些值,但很高興知道:Twitter還應(yīng)用了用戶量表= 0,該= 0,顧名思義,它可以禁用縮放功能。這對可訪問性不利,但使網(wǎng)頁感覺更像是本機(jī)應(yīng)用程序。它還出于相同的原因還設(shè)置了最大尺度= 1(您可以使用最小和最大比例來限制這些值之間的縮放度)。通常,設(shè)置完整的寬度和初始規(guī)模就足夠了。

第5行:

所有候選人中約有50%知道開放的圖形標(biāo)簽,并且對這個(gè)問題的一個(gè)很好的答案表明,他們對SEO了解。

完美答案:此標(biāo)簽是網(wǎng)站名稱Twitter的開放圖(OG)元標(biāo)記。 Facebook制作了打開的圖形協(xié)議,以使其更容易解開鏈接并在不錯(cuò)的卡片布局中顯示其預(yù)覽;開發(fā)人員可以添加各種作者資格詳細(xì)信息,并涵蓋用于花式共享的圖像。實(shí)際上,如今,使用像木偶器之類的東西自動生成開放式圖像也很常見。 (CSS-Tricks使用可以執(zhí)行此操作的WordPress插件。)

另一個(gè)有趣的旁注是,元標(biāo)記通常具有名稱屬性,但是OG使用了非標(biāo)準(zhǔn)屬性屬性。我想那只是Facebook是Facebook嗎?標(biāo)題,URL和描述打開的圖形標(biāo)簽有點(diǎn)冗余,因?yàn)槲覀円呀?jīng)有常規(guī)的元標(biāo)記,但是人們添加了它們是為了安全的。如今,大多數(shù)站點(diǎn)都使用開放圖和其他元數(shù)據(jù)以及頁面上的內(nèi)容來生成豐富的預(yù)覽。

第6行:

大多數(shù)候選人對此一無所知,但是經(jīng)驗(yàn)豐富的開發(fā)人員可以談?wù)撊绾蝺?yōu)化Apple設(shè)備的網(wǎng)站,例如Apple-Touch-Icons和Safari固定的Tab SVGS。

完美的答案:您可以將網(wǎng)站固定在iPhone的HomeScreen上,以使其感覺像是本地應(yīng)用程序。 Safari不支持漸進(jìn)式網(wǎng)絡(luò)應(yīng)用程序,也不能真正使用iOS上的其他瀏覽器引擎,因此,如果您想要那種類似母語的經(jīng)驗(yàn),當(dāng)然,您真的沒有其他選擇。因此,他們補(bǔ)充說,告訴Safari這個(gè)應(yīng)用程序的標(biāo)題是Twitter。下一行是相似的,并且控制了應(yīng)用程序啟動時(shí)的狀態(tài)欄的外觀。

第8行:

完美答案:這是適當(dāng)?shù)木W(wǎng)絡(luò)標(biāo)準(zhǔn)式等效的蘋果狀態(tài)棒彩色元標(biāo)簽。它告訴瀏覽器主題為周圍的UI。 Chrome on Android上的Chrome and Brave on Desktop都做得很好。您可以將任何CSS顏色都放在內(nèi)容中,甚至可以使用媒體屬性僅顯示此顏色的特定媒體查詢,例如支持黑暗主題。您還可以在Web應(yīng)用程序清單中定義此和其他屬性。

第9行:

我采訪的人沒有人知道這一點(diǎn)。我認(rèn)為,只有在您對標(biāo)準(zhǔn)軌道上發(fā)生的所有新事物有深入的了解時(shí),您才知道這一點(diǎn)。

完美的答案:原始試驗(yàn)讓我們在我們的網(wǎng)站上使用新的和實(shí)驗(yàn)性的功能,并且反饋由用戶代理跟蹤,并向Web標(biāo)準(zhǔn)社區(qū)報(bào)告,而無需用戶選擇輸入功能標(biāo)志。例如,Edge對雙屏和可折疊設(shè)備原語的原始試驗(yàn)非常酷,因?yàn)槟梢愿鶕?jù)打開或關(guān)閉可折疊手機(jī)來制作有趣的布局。

也接受:我不知道這個(gè)。

第10行:html {-ms-text-size-udjust:100%; - webkit-text ...

幾乎沒有人也知道這一點(diǎn)。只有您了解CSS邊緣案例和優(yōu)化,您才能弄清楚這一行。

完美的答案:想象您沒有移動響應(yīng)網(wǎng)站,并且在小屏幕上打開它,因此瀏覽器可能會調(diào)整文本大小以使其更大,從而易于閱讀。 CSS文本大小調(diào)整屬性可以使用無值禁用此功能,也可以指定允許瀏覽器使文本更大的百分比。

在這種情況下,Twitter表示最大值為100%,因此文本不應(yīng)大于實(shí)際尺寸。他們之所以這樣做,是因?yàn)樗麄兊木W(wǎng)站已經(jīng)響應(yīng)迅速,他們不想冒險(xiǎn)打破較大字體大小的布局。它應(yīng)用于根HTML標(biāo)簽,因此它適用于其中的所有內(nèi)容。由于這是實(shí)驗(yàn)性CSS屬性,因此需要前綴。另外,在此CSS之前,還有一個(gè)缺少的

也接受:我不知道該屬性的特定內(nèi)容,但是-ms和-webkit-分別是Internet Explorer和基于WebKit的瀏覽器所需的供應(yīng)商前綴,分別是非標(biāo)準(zhǔn)屬性的。 CSS3出來時(shí),我們曾經(jīng)需要這些前綴,但是由于屬性從實(shí)驗(yàn)到穩(wěn)定或被采用到標(biāo)準(zhǔn)軌道時(shí),這些前綴就消失了,而有利于標(biāo)準(zhǔn)化的屬性。

獎(jiǎng)勵(lì) - 第11行:身體{Margin:0;}

Twitter源代碼的這一行特別有趣,因?yàn)槟梢愿M(jìn)有關(guān)重置和標(biāo)準(zhǔn)化網(wǎng)頁之間差異的問題。幾乎每個(gè)人都知道正確答案的版本。

完美的答案:由于不同的瀏覽器具有不同的默認(rèn)樣式(用戶代理樣式表),因此您想通過重置屬性來覆蓋它們,以使您的網(wǎng)站在設(shè)備之間看起來相同。在這種情況下,Twitter告訴瀏覽器刪除車身標(biāo)簽的默認(rèn)邊距。這只是為了減少瀏覽器的不一致,但是我更喜歡將樣式歸一化而不是重置它們,即,在瀏覽器上應(yīng)用相同的默認(rèn)值,而不是完全刪除它們。人們甚至曾經(jīng)使用 * {margin:0},這完全是過分的且不適合性能,但是現(xiàn)在導(dǎo)入andary.css或reset.css.css(甚至更新的東西)之類的東西是常見的,然后從那里開始。

更多行!

我總是喜歡使用瀏覽器檢查員工具來查看網(wǎng)站的制作方式,這就是我想出這個(gè)想法的方式。即使我認(rèn)為自己是語義HTML的專家,但每次進(jìn)行此練習(xí)時(shí),我都會學(xué)到一些新東西。

由于Twitter主要是客戶端的React應(yīng)用程序,因此源代碼中只有幾十行。即使這樣,也有很多東西要學(xué)習(xí)! Twitter源代碼中還有一些有趣的行,我將作為讀者為您提供練習(xí)。您可以在采訪中解釋一下他們中的多少人?

 <link rel="“" search type="“應(yīng)用程序/openSearchDescription" xml href="%E2%80%9C/opensearch.xml%E2%80%9D" title="“" twitter>

…告訴瀏覽器,用戶可以將Twitter添加為搜索引擎。

 <link rel="“" preload as="“" script crossorigin="“匿名”" href="%E2%80%9C" https:>

…有許多有趣的屬性可以討論,尤其是Nonce。

 <link rel="“替代”" hreflang="“" x-default href="%E2%80%9C" https:>

…用于國際著陸頁。

 :focus:不([數(shù)據(jù) - 可訪問性polyfill])){uterline:none;}

…在不使用鍵盤導(dǎo)航時(shí)刪除焦點(diǎn)輪廓(CSS:焦點(diǎn)可見選擇器在此處進(jìn)行多填充)。

以上是向我解釋Twitter源代碼的前10行的詳細(xì)內(nèi)容。更多信息請關(guān)注PHP中文網(wǎng)其他相關(guān)文章!

本站聲明
本文內(nèi)容由網(wǎng)友自發(fā)貢獻(xiàn),版權(quán)歸原作者所有,本站不承擔(dān)相應(yīng)法律責(zé)任。如您發(fā)現(xiàn)有涉嫌抄襲侵權(quán)的內(nèi)容,請聯(lián)系admin@php.cn

熱AI工具

Undress AI Tool

Undress AI Tool

免費(fèi)脫衣服圖片

Undresser.AI Undress

Undresser.AI Undress

人工智能驅(qū)動的應(yīng)用程序,用于創(chuàng)建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用于從照片中去除衣服的在線人工智能工具。

Clothoff.io

Clothoff.io

AI脫衣機(jī)

Video Face Swap

Video Face Swap

使用我們完全免費(fèi)的人工智能換臉工具輕松在任何視頻中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費(fèi)的代碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

功能強(qiáng)大的PHP集成開發(fā)環(huán)境

Dreamweaver CS6

Dreamweaver CS6

視覺化網(wǎng)頁開發(fā)工具

SublimeText3 Mac版

SublimeText3 Mac版

神級代碼編輯軟件(SublimeText3)

熱門話題

Laravel 教程
1597
29
PHP教程
1488
72
CSS教程,用于創(chuàng)建加載旋轉(zhuǎn)器和動畫 CSS教程,用于創(chuàng)建加載旋轉(zhuǎn)器和動畫 Jul 07, 2025 am 12:07 AM

創(chuàng)建CSS加載旋轉(zhuǎn)器的方法有三種:1.使用邊框的基本旋轉(zhuǎn)器,通過HTML和CSS實(shí)現(xiàn)簡單動畫;2.使用多個(gè)點(diǎn)的自定義旋轉(zhuǎn)器,通過不同延遲時(shí)間實(shí)現(xiàn)跳動效果;3.在按鈕中添加旋轉(zhuǎn)器,通過JavaScript切換類來顯示加載狀態(tài)。每種方法都強(qiáng)調(diào)了設(shè)計(jì)細(xì)節(jié)如顏色、大小、可訪問性和性能優(yōu)化的重要性,以提升用戶體驗(yàn)。

解決CSS瀏覽器兼容性問題和前綴 解決CSS瀏覽器兼容性問題和前綴 Jul 07, 2025 am 01:44 AM

處理CSS瀏覽器兼容性和前綴問題需理解瀏覽器支持差異并合理使用廠商前綴。1.了解常見問題如Flexbox、Grid支持不一,position:sticky失效,動畫表現(xiàn)不同;2.查閱CanIuse確認(rèn)特性支持情況;3.正確使用-webkit-、-moz-、-ms-、-o-等廠商前綴;4.推薦使用Autoprefixer自動添加前綴;5.安裝PostCSS并配置browserslist指定目標(biāo)瀏覽器;6.構(gòu)建時(shí)自動處理兼容性;7.老項(xiàng)目可用Modernizr檢測特性;8.不必追求所有瀏覽器一致,確

顯示:內(nèi)聯(lián),顯示:塊和顯示:內(nèi)聯(lián)塊之間有什么區(qū)別? 顯示:內(nèi)聯(lián),顯示:塊和顯示:內(nèi)聯(lián)塊之間有什么區(qū)別? Jul 11, 2025 am 03:25 AM

Themaindifferencesbetweendisplay:inline,block,andinline-blockinHTML/CSSarelayoutbehavior,spaceusage,andstylingcontrol.1.Inlineelementsflowwithtext,don’tstartonnewlines,ignorewidth/height,andonlyapplyhorizo??ntalpadding/margins—idealforinlinetextstyling

使用CSS剪輯路徑創(chuàng)建自定義形狀 使用CSS剪輯路徑創(chuàng)建自定義形狀 Jul 09, 2025 am 01:29 AM

使用CSS的clip-path屬性可以裁剪元素為自定義形狀,如三角形、圓形缺口、多邊形等,無需依賴圖片或SVG。其優(yōu)勢包括:1.支持circle、ellipse、polygon等多種基本形狀;2.可響應(yīng)式調(diào)整,適配移動端;3.易于動畫化,可結(jié)合hover或JavaScript實(shí)現(xiàn)動態(tài)效果;4.不影響布局流,僅裁剪顯示區(qū)域。常見用法如圓形裁剪clip-path:circle(50pxatcenter)和三角形裁剪clip-path:polygon(50%0%,1000%,00%)。注意

造型與CSS不同訪問的鏈接 造型與CSS不同訪問的鏈接 Jul 11, 2025 am 03:26 AM

設(shè)置訪問過鏈接的樣式能提升用戶體驗(yàn),尤其在內(nèi)容密集型網(wǎng)站中幫助用戶更好導(dǎo)航。1.使用CSS的:visited偽類可定義已訪問鏈接樣式,如顏色變化;2.注意瀏覽器出于隱私限制僅允許修改部分屬性;3.顏色選擇應(yīng)與整體風(fēng)格協(xié)調(diào),避免突兀;4.移動端可能不顯示該效果,建議結(jié)合其他視覺提示如icon輔助標(biāo)識。

如何使用CSS創(chuàng)建響應(yīng)式圖像? 如何使用CSS創(chuàng)建響應(yīng)式圖像? Jul 15, 2025 am 01:10 AM

要使用CSS創(chuàng)建響應(yīng)式圖片,主要可通過以下方法實(shí)現(xiàn):1.使用max-width:100%和height:auto讓圖片在保持比例的同時(shí)自適應(yīng)容器寬度;2.結(jié)合HTML的srcset和sizes屬性智能加載適配不同屏幕的圖片源;3.利用object-fit和object-position控制圖片裁剪與焦點(diǎn)展示。這些方法共同確保圖片在不同設(shè)備上清晰、美觀地呈現(xiàn)。

揭開CSS單元的神秘面紗:PX,EM,REM,VW,VH比較 揭開CSS單元的神秘面紗:PX,EM,REM,VW,VH比較 Jul 08, 2025 am 02:16 AM

CSS單位的選擇取決于設(shè)計(jì)需求和響應(yīng)式要求。1.px用于固定尺寸,適合精確控制但缺乏彈性;2.em是相對單位,受父元素影響易導(dǎo)致級聯(lián)問題,rem則基于根元素更穩(wěn)定,適合全局縮放;3.vw/vh基于視口大小,適合響應(yīng)式設(shè)計(jì),但需注意極端屏幕下的表現(xiàn);4.選擇時(shí)應(yīng)根據(jù)是否需要響應(yīng)式調(diào)整、元素層級關(guān)系及視口依賴程度來決定,合理搭配使用可提升布局靈活性與維護(hù)性。

什么是常見的CSS瀏覽器不一致? 什么是常見的CSS瀏覽器不一致? Jul 26, 2025 am 07:04 AM

不同瀏覽器對CSS解析存在差異,導(dǎo)致顯示效果不一致,主要包括默認(rèn)樣式差異、盒模型計(jì)算方式、Flexbox和Grid布局支持程度及某些CSS屬性行為不一致。1.默認(rèn)樣式處理不一致,解決方法是使用CSSReset或Normalize.css統(tǒng)一初始樣式;2.舊版IE的盒模型計(jì)算方式不同,建議統(tǒng)一使用box-sizing:border-box;3.Flexbox和Grid在邊緣情況或舊版本中表現(xiàn)有差異,應(yīng)多測試并使用Autoprefixer;4.某些CSS屬性行為不一致,需查閱CanIuse并提供降級

See all articles