HTML 文檔中的元素是一個接着一個排列的,只是簡單地在在塊級元素的先後加上拆行,是一種流水佈局。可是,咱們所見到的 Web 頁面按照必定的規則佈局排版的(一般是多列的),因此就要藉助必定的方法來實現這種佈局,一般的解決方案是:使用區塊元素 <div> 或 表格(<table>)來佈局 Web 頁面的內容。
概述css
使用表格進行佈局,是一種較老的佈局解決方案。並不推薦使用,咱們應該老是使用表格來顯示錶格化的數據。
HTML 文檔html
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <!-- 連接到外部樣式表 --> <link rel="stylesheet" href="css/mystyle.css"> <title>Island estaurant</title> </head> <body> <table id="container"> <!-- 頭部 --> <tr> <td id="header" colspan="2"> <h1>點菜系統</h1> </td> </tr> <!-- 主體 --> <tr> <!-- 菜單 --> <td id="menu"> <b>菜品</b><br> <div id="dishes"> 小雞燉蘑菇<br> 家常豆腐<br> 酸辣土豆絲<br> </div> </td> <!-- 內容 --> <td id="content"> 小雞燉蘑菇:<br> 幼雞一隻 </td> </tr> <!-- 尾部 --> <tr> <td id="footer" colspan="2">世俗孤島的餐廳</td> </tr> </table> </body> </html>
CSS 文件編程
/*整個點餐系統的界面*/ #container { width: 600px; margin: 100px; /*取消單元格邊框之間的邊距*/ border-spacing: 0; } /*點餐系統界面的頭部*/ #header { background-color: red; text-align: center; } h1 { margin-bottom: 0px; } /*點餐系統界面的菜單*/ #menu { background-color: #FFD700; height: 200px; width: 150px; } #dishes { padding-top: 10px; padding-left: 10px; line-height: 20px; } /*點餐系統界面的菜品詳情*/ #content { background-color: gray; height: 200px; width: 450px; } /*點餐系統界面的尾部*/ #footer { background-color: blue; height: 25px; text-align: center; }
效果圖佈局
概述spa
<div> 元素是一個塊級元素,一個 HTML 元素容器,其自己並無任何意義。一般與 CSS 協做來實現 Web 頁面佈局方案。是一種較 表格佈局 更新的佈局解決方案。
HTML 文檔code
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <!-- 連接到外部樣式表 --> <link rel="stylesheet" href="css/mystyle.css"> <title>Island estaurant</title> </head> <body> <!-- 基於 div 的佈局 --> <div id="container"> <!-- 頭部 --> <div id="header"> <h1>點菜系統</h1> </div> <!-- 菜單 --> <div id="menu"> <b>菜品</b><br> <div id="dishes"> 小雞燉蘑菇<br> 家常豆腐<br> 酸辣土豆絲<br> </div> </div> <!-- 內容 --> <div id="content"> 小雞燉蘑菇:<br> 幼雞一隻 </div> <!-- 尾部 --> <div id="footer"> 世俗孤島的餐廳 </div> </div> </body> </html>
CSS 文件htm
/*整個點餐系統的界面*/ #container { width: 600px; margin: 100px; } /*點餐系統界面的頭部*/ #header { background-color: red; text-align: center; } h1 { margin-bottom: 0px; } /*點餐系統界面的菜單*/ #menu { background-color: #FFD700; height: 200px; width: 150px; float: left; } #dishes { padding-top: 10px; padding-left: 10px; line-height: 20px; } /*點餐系統界面的菜品詳情*/ #content { background-color: gray; height: 200px; width: 450px; float: left; } /*點餐系統界面的尾部*/ #footer { background-color: blue; height: 25px; text-align: center; clear: both; }
由上述的兩個示例,咱們能夠看到,儘管使用不一樣的方案實現相同的佈局效果,可是其 CSS 文件幾乎是沒有變化的。這是爲何呢?顯然,咱們會發現,兩個示例中的元素的標示 id 是沒有變化的,這已足以解釋緣由。但願同窗們都能體會到這一點。
寫在前面blog
不知道同窗們,是如何看待編程的,也不知道你們是否喜歡當前從事的這個職業。我的以爲,編程不只僅是個人工做,它是個人生活,更是個人人生。我習慣用生活中的一些思惟去面對編程中遇到的一些東西,去體會它的發展。我喜歡跟着本身的思惟去創造和諧優雅的東西,一點點變換和固化本身的思惟,並全身心的享受這個過程。下面談談我對 CSS 與 HTML 分離的理解。
關於ci
關於其中涉及到的知識,會在後面的博客中逐漸涉及到。