Bỏ qua tới nội dung
Kiến thức Website· ·12 phút đọc

Mobile first là gì và sai lầm thường gặp khi thiết kế web trên máy tính trước

Nguyen Hien
Mobile first là gì và sai lầm thường gặp khi thiết kế web trên máy tính trước
Cỡ chữ

Mobile first là gì

Mobile first là cách tiếp cận thiết kế và lập trình web trong đó người làm bắt đầu từ màn hình nhỏ nhất (điện thoại) trước, rồi mới mở rộng thiết kế ra màn hình lớn hơn (tablet, máy tính). Đây là một triết lý làm việc, không phải một kỹ thuật cụ thể hay một thư viện nào.

Khái niệm này được Luke Wroblewski đề xuất năm 2009 và được Google chính thức áp dụng vào thuật toán xếp hạng từ năm 2018 qua cơ chế Mobile-first Indexing (Google đánh giá phiên bản di động của trang để xếp hạng, thay vì phiên bản máy tính như trước).

Ý nghĩa thực tế: khi thiết kế web theo hướng mobile first, cả nhóm buộc phải quyết định từ sớm điều gì quan trọng nhất cho người dùng điện thoại, thay vì sau đó “ép” phiên bản máy tính vào màn hình nhỏ hơn.

Vì sao mobile first quan trọng ngay từ bước đầu

Nhìn vào số liệu lưu lượng truy cập web Việt Nam, phần lớn người dùng vào web từ điện thoại. Tỷ lệ này đặc biệt cao với các ngành như bán lẻ, nhà hàng, dịch vụ địa phương. Một web thiết kế chỉ đẹp trên máy tính là đang bỏ qua phần lớn người ghé vào.

Nhưng quan trọng hơn: Google dùng phiên bản di động của trang để đánh giá xếp hạng. Nếu phiên bản điện thoại tải chậm, chữ bé, nội dung bị ẩn hoặc khó bấm, điểm số SEO kỹ thuật bị ảnh hưởng trực tiếp, không chỉ trải nghiệm người dùng.

Và điều ít ai nhắc tới: thiết kế mobile first thường ra trang máy tính đẹp hơn thiết kế theo chiều ngược lại. Ép buộc phải ưu tiên từ đầu khiến bố cục gọn hơn, nội dung rõ ràng hơn, bỏ bớt được các phần thừa trước khi chúng kịp lên trang.

Sai lầm lớn nhất: làm desktop rồi thu nhỏ lại không phải mobile first

Đây là nhầm lẫn phổ biến nhất. Nhiều nhóm làm web thiết kế đầy đủ trên màn hình 1440px rồi dùng media query (câu lệnh CSS kích hoạt khi màn hình đạt một kích thước nhất định) để thu nhỏ xuống điện thoại. Họ gọi cách này là “responsive”, đôi khi còn gọi nhầm là “mobile first”.

Thực ra đây là desktop first, theo chiều ngược lại. Và hệ quả thường thấy là phiên bản điện thoại hay bị: chữ nhỏ hơn mức cần thiết, một số phần tử bị ẩn bằng display: none thay vì được thiết kế lại, bố cục nhét không vừa nên tự phá vỡ, và tốc độ tải chậm vì phải tải cả phiên bản desktop trước.

Mobile first thật thì ngược lại: CSS viết từ min-width lên (mobile trước, tablet sau, desktop cuối). Thứ tự đó buộc người thiết kế phải hỏi “điện thoại cần gì tối thiểu để hoạt động” thay vì “desktop đang có gì cần giữ lại”.

Sơ đồ so sánh mobile first và desktop first: thứ tự thiết kế ngược chiều nhau

Mobile first, responsive và adaptive: ba khái niệm không giống nhau

Ba khái niệm này hay bị dùng thay thế cho nhau, nhưng chúng không đồng nghĩa.

Mobile first là triết lý và thứ tự làm: thiết kế từ màn hình nhỏ nhất trước, mở rộng dần ra lớn hơn. Nó không nói gì về kỹ thuật cụ thể, chỉ nói về hướng tiếp cận.

Responsive design (thiết kế co giãn) là kỹ thuật: dùng CSS linh hoạt (%, em, flexbox, grid) để một trang tự điều chỉnh theo bất kỳ kích thước màn hình nào. Responsive design có thể làm theo hướng mobile first hoặc desktop first.

Adaptive design (thiết kế thích nghi) là cách khác: tạo nhiều phiên bản giao diện cố định cho từng loại màn hình (ví dụ: phiên bản riêng cho 320px, 768px, 1024px). Server nhận diện thiết bị rồi trả về phiên bản phù hợp. Kiểm soát chính xác hơn nhưng tốn công bảo trì hơn.

Combo phổ biến nhất hiện nay: mobile first + responsive. Có nghĩa là code CSS theo thứ tự từ nhỏ lên lớn, dùng kỹ thuật co giãn linh hoạt để giảm số điểm gãy (breakpoint) cần kiểm soát. Đọc thêm về breakpoint là gì để hiểu rõ hơn điểm gãy hoạt động như thế nào, và bài media query là gì để thấy câu lệnh CSS đằng sau.

Bảng so sánh mobile first, responsive design và adaptive design về cơ chế và ứng dụng

Cách nhận biết web có thật sự mobile first không

Mở Chrome DevTools (nhấn F12 trên Chrome), chuyển sang chế độ điện thoại với độ rộng 375px. Sau đó quan sát:

Nếu nội dung đọc được ngay, nút bấm đủ lớn ngón tay bấm thoải mái, không xuất hiện thanh cuộn ngang, text không bé hơn 14-16px, đây là dấu hiệu mobile first thật. Đặc biệt, nếu xem source code và thấy CSS dùng chủ yếu min-width làm breakpoint (thay vì max-width), đó là bằng chứng kỹ thuật rõ nhất.

Ngược lại, nếu phải phóng to mới đọc được, một số phần tử bị ẩn (kiểm tra DevTools sẽ thấy display: none hoặc visibility: hidden), thanh cuộn ngang xuất hiện, hoặc thiết kế chỉ được duyệt trên máy tính, đó là desktop first dù có responsive CSS hay không.

Một bài kiểm tra nhanh khác: mở Google Search Console (nếu đang có) và xem mục “Trải nghiệm trang”, phần “Tính thân thiện với thiết bị di động”. Lỗi nào xuất hiện ở đó phản ánh trực tiếp mức độ mobile-first thật của trang.

Checklist dấu hiệu mobile first thật và desktop first trá hình

Ví dụ để dễ hình dung

Tưởng tượng trang đặt bàn của một nhà hàng. Trên máy tính, nhà hàng muốn hiện: ảnh không gian lớn, menu theo mùa, bản đồ, thông tin đặt tiệc, review khách, và form đặt bàn online. Nhiều thứ, màn hình rộng chứa được hết.

Nếu làm desktop first, bố cục đó sẽ được ép vào 375px. Thường kết quả là: form đặt bàn bị xuống tận cùng trang, menu PDF không bấm được trên điện thoại, bản đồ bị thu nhỏ đến mức không dùng được, và ảnh không gian nặng tải chậm vì không có phiên bản nhỏ hơn.

Nếu làm mobile first, nhóm bắt đầu bằng câu hỏi: người dùng điện thoại cần gì nhất khi vào trang này? Thường câu trả lời là: xem giờ mở cửa, tìm địa chỉ, gọi điện hoặc đặt bàn. Từ đó, form đặt bàn và số điện thoại ở đầu trang, bản đồ nhúng chuẩn, menu là văn bản thật không phải file PDF. Máy tính sau đó nhận thêm ảnh lớn, cột phụ và phần review, nhưng chức năng cốt lõi đã chắc từ trước.

Muốn hiểu thêm về viewport (vùng nhìn thấy trên màn hình thiết bị), đọc bài viewport là gìUI/UX là gì để hiểu toàn cảnh.

Người không rành kỹ thuật cần quan tâm tới mức nào

Nếu đang thuê làm web, có một câu hỏi đơn giản: “Bạn thiết kế từ điện thoại lên hay từ máy tính xuống?” Câu hỏi đó đủ để nhóm làm hiểu bạn biết mình đang nói gì.

Nếu họ nói “responsive rồi không lo”, hỏi thêm: “Bạn có thể mở màn hình 375px trong lúc thiết kế và show cho mình xem không?” Responsive không tự động có nghĩa là mobile first. Hai thứ khác nhau, nhất là ở bước lập kế hoạch ban đầu.

Với bất kỳ trang nào phục vụ người tìm kiếm từ điện thoại, đây không phải tính năng tùy chọn. Đây là điều kiện cơ bản để trang hoạt động đúng với phần lớn người ghé vào, dù ở ngành nào.

Câu hỏi thường gặp về mobile first

Responsive design có phải lúc nào cũng là mobile first không?

Không. Responsive chỉ nói về kỹ thuật CSS co giãn theo màn hình, không nói về thứ tự thiết kế. Một trang responsive hoàn toàn có thể được thiết kế theo hướng desktop first, tức là code từ max-width xuống. Hai khái niệm này tách biệt nhau.

Mobile first có làm phiên bản máy tính kém hơn không?

Ngược lại. Ép buộc phải ưu tiên từ màn hình nhỏ thường tạo ra bố cục gọn, nội dung cô đọng hơn. Khi mở rộng ra desktop, nhóm làm thêm chi tiết thay vì phải cắt bớt, và kết quả thường sạch hơn so với desktop first rồi thu nhỏ lại.

Google Mobile-first Indexing ảnh hưởng xếp hạng thế nào?

Google dùng phiên bản di động của trang để đánh giá nội dung, tốc độ và trải nghiệm khi xếp hạng. Nếu phiên bản điện thoại thiếu nội dung so với phiên bản máy tính, hoặc tải chậm hơn, điểm số SEO tổng thể bị ảnh hưởng, không chỉ riêng thiết bị di động.

Kiểm tra mobile first có cần điện thoại thật không?

Chrome DevTools ở chế độ mobile cho kiểm tra nhanh trong lúc code. Nhưng để kiểm tra thật, cần mở trên điện thoại thật, đặc biệt iPhone với Safari, vì Safari iOS xử lý một số thuộc tính CSS khác Chrome. Điều này quan trọng nhất khi trang dùng parallax, sticky element hay font tùy chỉnh.

Nếu bạn không chắc web hiện tại đang ở mức nào, Web22 nhận làm website responsive và kiểm tra được tình trạng hiện tại cho bạn trong buổi trao đổi đầu.

Đọc tiếp

Bài viết
cùng chủ đề.

Tất cả bài viết