响应式网页设计 - 教程


什么是响应式网页设计?

  • 响应式 web 设计会让您的网页在所有设备上看起来都不错。
  • 响应式 web 设计仅使用 HTML 和 CSS。
  • 响应式 web 设计并不是程序或 JavaScript。

为所有用户获得最佳体验的设计

可以使用许多不同的设备来查看网页:台式机、平板电脑和手机。无论使用哪种设备,您的网页都应该看起来美观且易用。

网页不应舍弃信息来适合较小的设备,而应使其内容适合任何设备:

电脑桌面
平板
手机

如果您使用 CSS 和 HTML 调整大小、隐藏、缩小、放大或移动内容,以使其在任何屏幕上看起来都很好,则称为响应式 Web 设计。

如果您不理解下面的例子,请不要担心,我们将在下一章中一步一步地分解代码:

完整代码如下:

  1. <html>
  2. <head>
  3. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  4. <style>
  5. * {
  6. box-sizing: border-box;
  7. }
  8. p {
  9. font-size: 14px;
  10. }
  11. .row::after {
  12. content: "";
  13. clear: both;
  14. display: table;
  15. }
  16. [class*="col-"] {
  17. float: left;
  18. padding: 15px;
  19. }
  20. html {
  21. font-family: "Lucida Sans", sans-serif;
  22. }
  23. .header {
  24. background-color: #9933cc;
  25. color: #ffffff;
  26. padding: 15px;
  27. }
  28. .menu ul {
  29. list-style-type: none;
  30. margin: 0;
  31. padding: 0;
  32. }
  33. .menu li {
  34. padding: 8px;
  35. margin-bottom: 7px;
  36. background-color: #33b5e5;
  37. color: #ffffff;
  38. box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24);
  39. }
  40. .menu li:hover {
  41. background-color: #0099cc;
  42. }
  43. .aside {
  44. background-color: #33b5e5;
  45. padding: 15px;
  46. color: #ffffff;
  47. text-align: center;
  48. font-size: 14px;
  49. box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24);
  50. }
  51. .footer {
  52. background-color: #0099cc;
  53. color: #ffffff;
  54. text-align: center;
  55. font-size: 12px;
  56. padding: 15px;
  57. }
  58. /* For mobile phones: */
  59. [class*="col-"] {
  60. width: 100%;
  61. }
  62. @media only screen and (min-width: 600px) {
  63. /* For tablets: */
  64. .col-s-1 {
  65. width: 8.33%;
  66. }
  67. .col-s-2 {
  68. width: 16.66%;
  69. }
  70. .col-s-3 {
  71. width: 25%;
  72. }
  73. .col-s-4 {
  74. width: 33.33%;
  75. }
  76. .col-s-5 {
  77. width: 41.66%;
  78. }
  79. .col-s-6 {
  80. width: 50%;
  81. }
  82. .col-s-7 {
  83. width: 58.33%;
  84. }
  85. .col-s-8 {
  86. width: 66.66%;
  87. }
  88. .col-s-9 {
  89. width: 75%;
  90. }
  91. .col-s-10 {
  92. width: 83.33%;
  93. }
  94. .col-s-11 {
  95. width: 91.66%;
  96. }
  97. .col-s-12 {
  98. width: 100%;
  99. }
  100. }
  101. @media only screen and (min-width: 768px) {
  102. /* For desktop: */
  103. .col-1 {
  104. width: 8.33%;
  105. }
  106. .col-2 {
  107. width: 16.66%;
  108. }
  109. .col-3 {
  110. width: 25%;
  111. }
  112. .col-4 {
  113. width: 33.33%;
  114. }
  115. .col-5 {
  116. width: 41.66%;
  117. }
  118. .col-6 {
  119. width: 50%;
  120. }
  121. .col-7 {
  122. width: 58.33%;
  123. }
  124. .col-8 {
  125. width: 66.66%;
  126. }
  127. .col-9 {
  128. width: 75%;
  129. }
  130. .col-10 {
  131. width: 83.33%;
  132. }
  133. .col-11 {
  134. width: 91.66%;
  135. }
  136. .col-12 {
  137. width: 100%;
  138. }
  139. }
  140. </style>
  141. </head>
  142. <body>
  143. <div class="header">
  144. <h1>上海</h1>
  145. </div>
  146. <div class="row">
  147. <div class="col-3 col-s-3 menu">
  148. <ul>
  149. <li>航班</li>
  150. <li>景点</li>
  151. <li>美食</li>
  152. <li>购物</li>
  153. </ul>
  154. </div>
  155. <div class="col-6 col-s-9">
  156. <h1>城市</h1>
  157. <p>上海市,简称沪,别称申,是中华人民共和国直辖市,中国的经济、金融、贸易和航运中心,世界著名的港口城市,是中国人口第二多的城市。</p>
  158. <p>上海位于中国东部弧形海岸线的正中间,长江三角洲最东部,东临东海,南濒杭州湾,西与江苏、浙江两省相接,北端的崇明岛处于长江入海口中,与周围的江苏、浙江、安徽三省多个城市共同构成世界级城市群长江三角洲城市群,是其重要的组成部分。</p>
  159. </div>
  160. <div class="col-3 col-s-12">
  161. <div class="aside">
  162. <h2>简介</h2>
  163. <p>中国经济规模最大的城市。</p>
  164. <h2>位置</h2>
  165. <p>长三角区域,东海之滨。</p>
  166. <h2>交通</h2>
  167. <p>上海的交通四通八达,拥有空铁海河各种交通通道。</p>
  168. </div>
  169. </div>
  170. </div>
  171. <div class="footer">
  172. <p>调整浏览器窗口的大小以查看内容对调整大小的响应。</p>
  173. </div>
  174. </body>
  175. </html>

分类导航