CodeGym /Java Adesua /Frontend SELF TW /Mobile-first 和 desktop-first 方法

Mobile-first 和 desktop-first 方法

Frontend SELF TW
等級 26 , 課堂 2
開放

8.1 Mobile-first 方法

響應式網頁設計要求網站適應不同設備和屏幕大小。有兩種主要的方法來開發響應式布局:mobile-firstdesktop-first。這兩種方法各有優勢和特色,影響開發過程和最終結果。

Mobile-first 原則

mobile-first 方法表示開發從移動設備的設計開始,然後擴展到更大的屏幕。這種方法基於極簡主義,專注於移動用戶所需的關鍵功能和內容。

Mobile-first 的優勢:

  • 性能優化:移動設備通常有較慢的連接和有限的資源,所以簡約的設計可以提高性能
  • 提升用戶體驗:mobile-first 設計確保在移動設備上的使用便利,這在移動用戶不斷增長的情況下尤為重要
  • 更易適應:從移動設計開始,更容易為更大屏幕添加功能和樣式

Mobile-first 的實現示例:

CSS
    
      /* 基礎樣式,適用於移動設備 */

      body {
        font-family: Arial, sans-serif;
        padding: 10px;
      }

      header, main, footer {
        margin: 10px 0;
      }

      header {
        text-align: center;
      }

      /* 大屏幕的樣式 */

      @media (min-width: 768px) {
        body {
          padding: 20px;
        }

        header, main, footer {
          margin: 20px 0;
        }

        header {
          text-align: left;
        }
      }

      @media (min-width: 1024px) {
        body {
          padding: 30px;
        }

        header, main, footer {
          margin: 30px 0;
        }
      }
    
  
HTML
    
      <!DOCTYPE html>
      <html lang="en">
        <head>
          <meta charset="UTF-8">
          <meta name="viewport" content="width=device-width, initial-scale=1.0">
          <title>Mobile-first 示例</title>
          <link rel="stylesheet" href="styles.css">
        </head>
        <body>
          <header>
            <h1>標題</h1>
          </header>
          <main>
            <p>主要內容</p>
          </main>
          <footer>
            <p>頁腳</p>
          </footer>
        </body>
      </html>
    
  

代碼解釋:

  • 基礎樣式:定義移動設備的樣式
  • 媒體查詢:擴展到平板和桌面設備的樣式

8.2 Desktop-first 方法

desktop-first 方法表示開發從桌面設備的設計開始,然後適應更小的屏幕。此方法允許先實現所有功能和界面元素,然後對移動設備進行簡化。

Desktop-first 的優勢:

  • 完整功能:開發從網站的完整版本開始,包括所有的功能和界面元素
  • 開發便利:對許多設計師和開發者來說,從更大的屏幕開始更容易,在那裡有更多的空間進行操作

Desktop-first 的實現示例:

CSS
    
      /* 桌面設備的基礎樣式 */

      body {
        font-family: Arial, sans-serif;
        padding: 30px;
      }

      header, main, footer {
        margin: 30px 0;
      }

      header {
        text-align: left;
      }

      nav ul {
        display: flex;
        gap: 10px;
        list-style-type: none;
        padding: 0;
      }

      nav ul li a {
        text-decoration: none;
        color: black;
      }

      /* 小屏幕的樣式 */

      @media (max-width: 1024px) {
        body {
          padding: 20px;
        }

        header, main, footer {
          margin: 20px 0;
        }

        nav ul {
          flex-direction: column;
        }
      }

      @media (max-width: 768px) {
        body {
          padding: 10px;
        }

        header, main, footer {
          margin: 10px 0;
        }

        nav ul {
          display: none;
        }
      }
    
  
HTML
    
      <!DOCTYPE html>
      <html lang="en">
        <head>
          <meta charset="UTF-8">
          <meta name="viewport" content="width=device-width, initial-scale=1.0">
          <title>Desktop-first 示例</title>
          <link rel="stylesheet" href="styles.css">
        </head>
        <body>
          <header>
            <h1>標題</h1>
            <nav>
              <ul>
                <li><a href="#">主頁</a></li>
                <li><a href="#">關於我們</a></li>
                <li><a href="#">聯繫方式</a></li>
              </ul>
            </nav>
          </header>
          <main>
            <p>主要內容</p>
          </main>
          <footer>
            <p>頁腳</p>
          </footer>
        </body>
      </html>
    
  

代碼解釋:

  • 基礎樣式:定義桌面設備的樣式
  • 媒體查詢:適應平板和移動設備的樣式,簡化界面並隨著屏幕縮小隱藏元素

8.3 方法比較

簡單對比一下 Mobile-first 和 Desktop-first 方法。

Mobile-first:

  • 主要焦點:移動設備
  • 過程:從簡約設計開始,為更大屏幕添加功能和樣式
  • 優勢:性能優化,提升移動設備的用戶體驗,更易適應更大屏幕

Desktop-first

  • 主要焦點:桌面設備
  • 過程:從完整網站開始,簡化移動設備的界面
  • 優勢:從一開始就實現完整功能和界面元素,在大屏幕上開發更便利

在 mobile-first 和 desktop-first 方法之間的選擇取決於項目目標、目標受眾和開發團隊的偏好。mobile-first 方法能優化移動設備並提升性能,而 desktop-first 方法則能從一開始就實現完整功能和界面元素。理解各方法的特點有助於創建自適應和用戶友好的網站,在各種設備上高效運行。

留言
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION