字體設置
sans和sans-serif為通用字體,具體哪個字體被最終應用由瀏覽器決定,通用字體只有在其他字體都無效時才會被當作代替方案。通用字體應該放在最后面
sans襯線字體
容易閱讀,一般使用在正文內容或字體比較小的情況下
sans-serif無襯線字體
容易疲勞,一般在文章標題中使用
如果在正文中使用無襯線字體,那么必須保證字體設置的足夠大
monospace等寬字體
指每個字符寬度都一致,使用它可以特別容易對齊,另外它可以是襯線的或非襯線字體。
缺字符
當有指定的字體但因為里面沒有找到對應的字符時,會顯示成缺字符,一般表現為 “口”
字體名加引號和不加引號的區別就是,中文會忽略字體名稱左右的空白字符,英文會將多個空格合并成一個空格。
html與xhtml
html與xhtml非常像,不過xhtml比html更加嚴格,因為xhtml想往xml方向發展,但html太過于松散,導致如果將html放到xml中,將會無法運行。
DOCTYPE
一些瀏覽器為了兼容早期的網站,避免和web標準起沖突,于是一些瀏覽器廠商想出了一個辦法,他們認為如果那些不知道web標準的人,他們寫的代碼一定也不符合標準,于是他們把沒有寫DOCTYPE或者DOCTYPE寫錯的頁面,用怪異模型來渲染頁面。但是到了這個年代,web標準已然成為了潮流,因此通過DOCTYPE來判斷以及不再適合。
設置Content-type
當服務器端忘記設置返回Content-type時,瀏覽器會嘗試使用頁面設置的Content-type來設置字符編碼
ie6 overflow bug
ie6有overflow:visibile bug,會父元素會自適應子元素,因此高度自適應可以使用_height
div與table
div不是用來布局的, css才是。也不是div比table合理,而是看你要做什么。
擴展的趁勢是產生列的時候,使用table
排隊,排隊
多列布局的網頁十分多見,別的不說,就是現在我使用的博客園的這個風格就是個兩列的布局。左面的side,右面的是main。依照大家的閱讀習慣,html里面當然應該先寫左面的side,然后再寫右面的main。其實,這樣做是不合理的。因為瀏覽器的解析是從上到下的。先解析出來的先顯示,后解析出來的后顯示。而左面的導航欄并不是用戶急于想看到的,用戶急于想看到的是main里面的文章的內容。所以正確的寫法是側邊欄寫在下面,網頁主題寫在上面,然后利用float樣式,讓它們出現在左邊或者右邊。
不是所有的標簽都是能自閉合
比如:
<textarea>
<script>
h1 - h6的不合理性
究竟是h1大還是h6大,就算拋開這一點,如果有更多的子集那么用h幾?因此在html5中,添加了一個section標簽,每個section就是一個塊。
xml
html想往xml上靠,主要是因為他們想讓html更加結構化
attachEvent
attachEvent中的this是指window,因為它相當于是引用了一個函數
監聽模式
將所有需要綁定事件的,push到一個數組中,循環
函數中的變量
如果將函數當做構造函數或者閉包來使用,那么只有對象銷毀的時候,里面的變量才會銷毀(代驗證,chrome不存在這個問題)
瀏覽器無法并行下載的原因
瀏覽器認為在JS腳本中可能會輸出HTML內容,導致頁面錯亂,因為順序問題,而使用defer屬性,則是告訴瀏覽器,這個腳本中不會輸出HTML內容
一些問題
1、在分配ID和類名時,盡可能保持與表現形式無關,例如contleft有可能以后希望出現在右邊。
2、不要動態修改 DOM 里面的 id 屬性,IE低版本,id修改后并不會自動去重新匹配CSS規則
文章列表
不含病毒。www.avast.com |
留言列表