Khai báo nào sau đây là khai báo chuẩn của HTML5 ở dòng đầu tiên của tài liệu?
Đáp án đúng:A (<!DOCTYPE html>)
Giải thích: Theo slide Ch2 trang 15, khai báo là cú pháp thông báo phiên bản HTML5 cho trình duyệt.
Câu 2Chương 5: Thư viện jQuery
Bộ chọn jQuery nào sau đây dùng để chọn tất cả các phần tử tiêu đề heading từ <h1> đến <h6>?
Đáp án đúng:A ($(":header"))
Giải thích: Theo slide Ch5 trang 11, bộ chọn `:header` của jQuery dùng chọn tất cả các phần tử từ h1 đến h6.
Câu 3Chương 3: Định kiểu với CSS
Đoạn mã Media Query sau được áp dụng trong điều kiện nào? `@media screen and (max-width: 600px) { body { background-color: olive; } }`
Đáp án đúng:A (Màn hình có chiều rộng tối đa là 600px (chiều rộng từ 600px trở xuống))
Giải thích: Theo slide Ch3 trang 159, `@media screen and (max-width: 600px)` áp dụng các quy tắc style khi chiều rộng màn hình <= 600px.
Câu 4Chương 3: Định kiểu với CSS
Pseudo-element nào sau đây dùng để chèn nội dung vào ngay TRƯỚC nội dung của một phần tử?
Đáp án đúng:A (::before (hoặc :before))
Giải thích: Theo slide Ch3 trang 35, `::before` thiết lập style và chèn nội dung áp dụng ngay trước phần tử chỉ định.
Câu 5Chương 4: Ngôn ngữ JavaScript
Khi định nghĩa hàm trong JavaScript, nếu người dùng gọi hàm mà truyền thiếu đối số so với danh sách tham số, giá trị của tham số bị thiếu sẽ là gì?
Đáp án đúng:B (undefined)
Giải thích: Theo slide Ch4 trang 36, JS không bắt lỗi thiếu đối số, nhưng giá trị của tham số không được truyền vào sẽ nhận giá trị undefined.
Câu 6Chương 4: Ngôn ngữ JavaScript
Sự kiện nào sau đây xảy ra khi một điều khiển ô nhập liệu trên form bị MẤT tiêu điểm (focus)?
Đáp án đúng:B (onblur)
Giải thích: Theo slide Ch4 trang 126, sự kiện onblur xảy ra khi phần tử mất focus; còn onfocus xảy ra khi phần tử nhận focus.
Câu 7Chương 4: Ngôn ngữ JavaScript
Sự khác biệt cốt lõi giữa toán tử `==` và `===` trong JavaScript là gì?
Đáp án đúng:A (Toán tử == so sánh giá trị có ép kiểu; === so sánh bằng cả về giá trị và kiểu dữ liệu)
Giải thích: Theo slide Ch4 trang 30, `==` là so sánh bằng có ép kiểu tự động; `===` là so sánh bằng nghiêm ngặt (strict equality) cả giá trị và kiểu dữ liệu.
Câu 8Chương 3: Định kiểu với CSS
Bộ chọn CSS `p[title~="test"]` có ý nghĩa gì?
Đáp án đúng:D (Chọn các thẻ p có thuộc tính title chứa từ 'test' (phân cách bởi khoảng trắng))
Giải thích: Theo slide Ch3 trang 34, `[attr~=value]` chọn phần tử có thuộc tính mà giá trị của nó chứa từ value độc lập (phân cách bởi khoảng trắng).
Câu 9Chương 3: Định kiểu với CSS
Bộ chọn CSS nào sau đây chọn phần tử F là con trực tiếp cấp 1 của phần tử E?
Đáp án đúng:C (E > F)
Giải thích: Theo slide Ch3 trang 32, `E > F` là Child combinator chọn phần tử F có phần tử cha là E. `E F` là chọn con cháu ở mọi cấp.
Câu 10Chương 4: Ngôn ngữ JavaScript
Phương thức nào sau đây của đối tượng Number trong JavaScript dùng để chỉ định số lượng chữ số thập phân sau dấu phẩy? (Đề thi mẫu - Câu 18)
Đáp án đúng:B (toFixed())
Giải thích: Theo Đề thi mẫu câu 18 và slide Ch4 trang 26, phương thức toFixed(n) chuyển đổi số thành chuỗi số có n chữ số phần thập phân được định dạng.
Câu 11Chương 1: Tổng quan Internet & Web
Giao thức nào được sử dụng để truyền và tải tập tin (file) giữa máy khách và máy chủ trên Internet qua giao thức TCP?
Đáp án đúng:A (FTP (File Transfer Protocol))
Giải thích: Theo slide Ch1 trang 7, FTP dùng để truyền file trên Internet theo mô hình Client/Server, sử dụng giao thức TCP.
Câu 12Chương 2: Ngôn ngữ HTML
Thuộc tính nào của thẻ HTML có thể dùng để hiển thị tooltip (chú thích) khi người dùng rê chuột lên thành phần đó? (Đề thi mẫu - Câu 2)
Đáp án đúng:C (title)
Giải thích: Theo Đề thi mẫu câu 2 và slide Ch2 trang 39, thuộc tính title tạo tooltip khi con trỏ chuột dừng trên thành phần HTML.
Câu 13Chương 3: Định kiểu với CSS
Khi sử dụng thuộc tính `text-overflow: ellipsis;` để hiển thị dấu 3 chấm (...) khi văn bản bị tràn, hai thuộc tính CSS nào sau đây BẮT BUỘC phải đi kèm?
Đáp án đúng:C (white-space: nowrap; và overflow: hidden;)
Giải thích: Theo slide Ch3 trang 78, để `text-overflow` hoạt động bắt buộc phải có `white-space: nowrap;` và `overflow: hidden;`.
Câu 14Chương 4: Ngôn ngữ JavaScript
Phương thức nào của đối tượng String trả về vị trí xuất hiện đầu tiên của chuỗi con tìm kiếm (nếu không tìm thấy trả về -1)?
Đáp án đúng:D (indexOf())
Giải thích: Theo slide Ch4 trang 60, indexOf(searchValue, [fromIndex]) trả về vị trí tìm thấy chuỗi con lần đầu tiên, không thấy trả về -1.
Câu 15Chương 3: Định kiểu với CSS
Pseudo-class nào sau đây dùng để định dạng riêng cho phần tử con ĐẦU TIÊN nằm trong một phần tử cha?
Đáp án đúng:B (:first-child)
Giải thích: Theo slide Ch3 trang 37, `:first-child` chỉ chọn các phần tử là con đầu tiên của phần tử cha.
Câu 16Chương 3: Định kiểu với CSS
Trong Flexbox, để các flex item tự động chuyển dòng (rớt dòng) khi tổng chiều rộng của các item vượt quá chiều rộng của container, ta dùng thuộc tính nào?
Đáp án đúng:B (flex-wrap: wrap;)
Giải thích: Theo slide Ch3 trang 151, thuộc tính flex-wrap: wrap quy định các item chuyển xuống dòng mới khi chiều ngang của flex container không đủ.
Câu 17Chương 2: Ngôn ngữ HTML
Để hiển thị dòng chữ có đường viền màu đen mảnh xung quanh chữ 'me' trên cùng một hàng (inline) như `Hello [me]`, thẻ nào sau đây đúng? (Đề thi mẫu - Câu 6)
Đáp án đúng:D (Hello <span style="border:1px solid black">me</span>)
Giải thích: Theo Đề thi mẫu câu 6 và slide Ch2 trang 28, span là thành phần inline hiển thị trên cùng một dòng, trong khi div và p là khối block sẽ tự động ngắt dòng.
Câu 18Chương 3: Định kiểu với CSS
Trong bài tập tự luận 1 của đề thi mẫu, để chia dòng có class `item-4` thành 4 cột bằng nhau trong Flexbox, ta thiết lập độ rộng hoặc flex-basis cho mỗi cột con là bao nhiêu?
Đáp án đúng:D (width: 25% (hoặc flex: 25%))
Giải thích: Theo Đề thi mẫu tự luận 1, dòng chia làm 4 cột nên mỗi cột chiếm 100% / 4 = 25% chiều rộng.
Câu 19Chương 4: Ngôn ngữ JavaScript
Trong JavaScript, loại hộp thoại (dialog) nào cho phép người dùng nhập vào một chuỗi thông tin? (Đề thi mẫu - Câu 17)
Đáp án đúng:C (prompt())
Giải thích: Theo Đề thi mẫu câu 17 và slide Ch4 trang 32, hộp thoại prompt("chuỗi thông báo", ["giá trị gợi ý"]) cho phép người dùng nhập thông tin.
Câu 20Chương 1: Tổng quan Internet & Web
Phát biểu nào sau đây là ĐÚNG khi định nghĩa về trang Web tĩnh (Static Web)?
Đáp án đúng:C (Các tập tin HTML đặt sẵn trên server, khi có yêu cầu sẽ gửi thẳng về client không cần biên dịch/xử lý trên server)
Giải thích: Theo slide Ch1 trang 18, Web tĩnh là tập tin HTML có sẵn trên server, gửi trực tiếp về browser mà không cần biên dịch hay xử lý trên server. Trang web chứa video/ảnh động vẫn có thể là web tĩnh.
Câu 21Chương 2: Ngôn ngữ HTML
Phát biểu nào sau đây là SAI khi nói về cấu trúc thẻ <table> trong HTML? (Đề thi mẫu - Câu 4)
Đáp án đúng:D (Thành phần table chỉ chứa tối đa một thành phần tbody.)
Giải thích: Theo Đề thi mẫu câu 4 và slide Ch2 trang 60, thẻ table chỉ có tối đa 1 thead và 1 tfoot, nhưng CÓ THỂ CHỨA NHIỀU TBODY. Do đó phát biểu 'chỉ chứa tối đa 1 tbody' là sai.
Câu 22Chương 4: Ngôn ngữ JavaScript
Để xóa một cookie đã lưu trữ trên máy client bằng JavaScript, thao tác nào sau đây là đúng chuẩn?
Đáp án đúng:D (Gán thuộc tính expires của cookie về một mốc thời gian trong quá khứ)
Giải thích: Theo slide Ch4 trang 107, để xóa cookie ta gán trường expires về thời gian trước hiện tại (ví dụ: expires=Thu, 01 Jan 2020 00:00:00 UTC).
Câu 23Chương 4: Ngôn ngữ JavaScript
Trong cơ chế xử lý lỗi của JavaScript, lệnh nào dùng để chủ động ném ra một ngoại lệ (exception)?
Đáp án đúng:C (throw)
Giải thích: Theo slide Ch4 trang 138, lệnh 'throw' dùng để ném ra ngoại lệ dạng chuỗi, số, boolean hoặc object.
Câu 24Chương 3: Định kiểu với CSS
Bộ chọn `:nth-child(even)` trong CSS có tác dụng gì?
Đáp án đúng:A (Chọn các phần tử con ở vị trí chẵn (2, 4, 6, ...))
Giải thích: Theo slide Ch3 trang 40, `:nth-child(even)` chọn các phần tử con chẵn, còn `odd` chọn các phần tử lẻ.
Câu 25Chương 2: Ngôn ngữ HTML
Để thiết lập phím tắt truy cập nhanh cho một điều khiển form (ví dụ nhấn Alt + U hoặc Alt + Shift + U), ta dùng thuộc tính nào?
Đáp án đúng:D (accesskey)
Giải thích: Theo slide Ch2 trang 135, thuộc tính accesskey cho phép gán ký tự bàn phím làm phím tắt nhận tiêu điểm cho phần tử.
Câu 26Chương 3: Định kiểu với CSS
Để màu nền mỗi cột con trong dòng đổi màu lần lượt từ trái sang phải là brown, green, blue, gold, bộ chọn CSS nào là chuẩn xác nhất?
Giải thích: Theo Đề thi mẫu phần Tự luận 1 và slide Ch3 trang 40, sử dụng bộ chọn pseudo-class `:nth-child(n)` để chọn chính xác cột thứ 1, 2, 3, 4.
Câu 27Chương 4: Ngôn ngữ JavaScript
Cho biết giá trị của biến z sau khi thực thi câu lệnh sau: ```javascript var z = "Hello" + 5 + 3; ```
Đáp án đúng:A ("Hello53")
Giải thích: Theo slide Ch4 trang 31, khi toán tử '+' gặp chuỗi đầu tiên, các toán hạng sau tiếp tục bị chuyển thành chuỗi và nối vào: "Hello" + 5 -> "Hello5" + 3 -> "Hello53".
Câu 28Chương 5: Thư viện jQuery
Trong đề thi mẫu phần Tự luận 2, để làm cho quả bóng `#myBallId` di chuyển sang phải 500px và tăng chiều rộng thành 100px trong vòng 1 giây (1000ms), câu lệnh jQuery nào sau đây là ĐÚNG?
Đáp án đúng:C ($("#myBallId").animate({left: '500px', width: '100px'}, 1000);)
Giải thích: Theo đáp án câu 2 Tự luận Đề thi mẫu, sử dụng hàm animate() của jQuery với các thuộc tính CSS tương ứng và thời gian 1000ms.
Câu 29Chương 2: Ngôn ngữ HTML
Trong thẻ <ol>, để danh sách hiển thị thứ tự bắt đầu bằng số 6 thay vì số 1, ta thiết lập thuộc tính nào?
Đáp án đúng:C (<ol start="6">)
Giải thích: Theo slide Ch2 trang 54, thuộc tính start của thẻ
quy định thứ tự bắt đầu của danh sách (ví dụ: ).
Câu 30Chương 2: Ngôn ngữ HTML
Thẻ `<meta http-equiv="refresh" content="3; url=file.htm">` đặt trong thẻ `<head>` có tác dụng gì?
Đáp án đúng:A (Tự động chuyển hướng trang web đến trang file.htm sau 3 giây)
Giải thích: Theo slide Ch2 trang 21, thẻ meta http-equiv="refresh" content="3; url=file.htm" dùng để chuyển hướng trang sau 3 giây sang file.htm.
Câu 31Chương 3: Định kiểu với CSS
Thuộc tính `border-collapse: collapse;` trong CSS áp dụng cho thẻ <table> có tác dụng gì?
Đáp án đúng:D (Gộp các đường viền của các ô và bảng thành một đường viền đơn)
Giải thích: Theo slide Ch3 trang 127, thuộc tính border-collapse: collapse gộp các đường viền đôi của các ô liền kề thành một đường viền đơn duy nhất.
Câu 32Chương 3: Định kiểu với CSS
Thuộc tính `background-size: contain;` hoạt động như thế nào khi hiển thị ảnh nền?
Đáp án đúng:A (Tự động co giãn ảnh để nằm trọn trong khung chứa và giữ nguyên tỷ lệ rộng/cao)
Giải thích: Theo slide Ch3 trang 58, `contain` resize ảnh để lấp đầy trong khung và luôn giữ nguyên tỷ lệ rộng/cao (thấy toàn bộ ảnh).
Câu 33Chương 2: Ngôn ngữ HTML
Văn bản đặt trong thẻ <address>...</address> mặc định sẽ được trình duyệt hiển thị với định dạng gì?
Đáp án đúng:C (Chữ in nghiêng và có ngắt dòng)
Giải thích: Theo slide Ch2 trang 34, thẻ
chứa thông tin địa chỉ, tác giả, được hiển thị dạng in nghiêng và có ngắt dòng.
Câu 34Chương 4: Ngôn ngữ JavaScript
Cho đoạn mã JavaScript sau: ```javascript var x = 16 + 4 + "Volvo"; ``` Giá trị của biến x là:
Đáp án đúng:C ("20Volvo")
Giải thích: Theo slide Ch4 trang 31, phép tính thực hiện từ trái sang phải: 16 + 4 = 20, sau đó số 20 cộng chuỗi với "Volvo" thành chuỗi "20Volvo".
Câu 35Chương 3: Định kiểu với CSS
Pseudo-class nào sau đây chọn các phần tử input đang ở trạng thái bị vô hiệu hóa?
Đáp án đúng:D (:disabled)
Giải thích: Theo slide Ch3 trang 36, `:disabled` chọn các phần tử đang ở trạng thái vô hiệu hóa (disabled).
Câu 36Chương 4: Ngôn ngữ JavaScript
Phương thức nào của đối tượng Array trong JavaScript dùng để thêm một hoặc nhiều phần tử vào CUỐI mảng và trả về chiều dài mới của mảng?
Đáp án đúng:B (push())
Giải thích: Theo slide Ch4 trang 86, push() thêm phần tử vào cuối mảng; unshift() thêm vào đầu mảng; pop() xóa ở cuối; shift() xóa ở đầu.
Câu 37Chương 1: Tổng quan Internet & Web
Giao thức nào sau đây là giao thức hướng kết nối (connection-oriented), truyền tải dữ liệu tin cậy và có cơ chế kiểm soát lỗi?
Đáp án đúng:D (TCP (Transmission Control Protocol))
Giải thích: Theo slide Ch1 trang 6, TCP là giao thức hướng kết nối, thiết lập kết nối giữa hai máy tính để truyền tải dữ liệu tin cậy, có kiểm soát lỗi.
Để tạo hiệu ứng chuyển động hoạt hình CSS animation, từ khóa nào sau đây được dùng để định nghĩa tập hợp các khung hình (keyframes)?
Đáp án đúng:C (@keyframes)
Giải thích: Theo slide Ch3 trang 139-140, @keyframes animationname { ... } được dùng để định nghĩa các trạng thái khung hình theo mốc % hoặc from/to.
Câu 40Chương 4: Ngôn ngữ JavaScript
Phương thức DOM nào sau đây trả về danh sách tất cả các phần tử có thuộc tính class được chỉ định?
Đáp án đúng:A (document.getElementsByClassName())
Giải thích: Theo slide Ch4 trang 115, getElementsByClassName("class_name") trả về danh sách HTMLCollection tất cả các phần tử có class tương ứng.
Câu 41Chương 2: Ngôn ngữ HTML
Phát biểu nào sau đây là ĐÚNG về thẻ `<span>` trong HTML?
Đáp án đúng:B (span là thành phần HTML dạng nội dòng (inline))
Giải thích: Theo slide Ch2 trang 28 và Đề thi mẫu câu 12, span là thành phần HTML dạng inline (nội dòng), không tự động ngắt dòng.
Câu 42Chương 2: Ngôn ngữ HTML
Để gom các nút radio button vào cùng một nhóm chọn duy nhất (tại một thời điểm chỉ chọn được 1 radio), ta thiết lập thuộc tính nào của các thẻ <input type="radio"> giống nhau? (Đề thi mẫu - Câu 7)
Đáp án đúng:C (name)
Giải thích: Theo Đề thi mẫu câu 7 và slide Ch2 trang 122, các thẻ input radio có cùng giá trị thuộc tính name sẽ tự động được nhóm lại thành một nhóm chọn loại trừ nhau.
Câu 43Chương 1: Tổng quan Internet & Web
Giao thức POP3 (Post Office Protocol 3) được sử dụng cho mục đích nào sau đây?
Đáp án đúng:B (Lấy thư điện tử từ máy chủ (mail server) về máy người dùng)
Giải thích: Theo slide Ch1 trang 7, POP3 dùng để lấy thư điện tử từ mail server về máy người dùng, sử dụng giao thức TCP.
Câu 44Chương 1: Tổng quan Internet & Web
Đặc trưng cơ bản của Web động (Dynamic Web) là gì?
Đáp án đúng:B (Web động = Web tĩnh + lập trình xử lý (trang web không có sẵn mà được tạo động mỗi khi có yêu cầu))
Giải thích: Theo slide Ch1 trang 19, Web động là web tĩnh kết hợp lập trình xử lý phía server và cơ sở dữ liệu, trang web được tạo ra khi có request.
Câu 45Chương 2: Ngôn ngữ HTML
Để vẽ hình tròn trong SVG, thẻ nào sau đây được đặt bên trong thẻ `<svg>`?
Đáp án đúng:B (<circle cx="200" cy="100" r="80" />)
Giải thích: Theo slide Ch2 trang 86, trong SVG thẻ `` có thuộc tính cx, cy là tọa độ tâm và r là bán kính.
Câu 46Chương 5: Thư viện jQuery
Phương thức nào của jQuery trả về chiều rộng của phần tử bao gồm cả vùng nội dung, vùng đệm (padding) và đường viền (border)?
Đáp án đúng:C (outerWidth())
Giải thích: Theo slide Ch5 trang 45-46, width() là nội dung, innerWidth() gồm padding, outerWidth() gồm padding + border, và outerWidth(true) gồm cả margin.
Câu 47Chương 5: Thư viện jQuery
Trong jQuery, phương thức nào dùng để chèn thêm nội dung mới vào CUỐI bên trong phần tử được chọn?
Đáp án đúng:A (append())
Giải thích: Theo slide Ch5 trang 39, `append()` nối nội dung vào cuối bên trong phần tử; còn `prepend()` thêm vào đầu bên trong phần tử.
Câu 48Chương 5: Thư viện jQuery
Phương thức nào trong jQuery dùng để tạo hiệu ứng chuyển động hoạt hình tùy biến cho phần tử (thay đổi vị trí, kích thước)? (Đề thi mẫu - Tự luận 2)
Đáp án đúng:A (animate())
Giải thích: Theo slide Ch5 trang 62 và đề thi mẫu Tự luận 2, phương thức `animate({properties}, duration)` dùng để tạo hoạt hình tùy biến các thuộc tính CSS.
Câu 49Chương 3: Định kiểu với CSS
Để cố định ảnh nền không bị trượt khi người dùng cuộn trang web, ta thiết lập thuộc tính CSS nào sau đây? (Đề thi mẫu - Câu 13)
Đáp án đúng:A (background-attachment: fixed;)
Giải thích: Theo Đề thi mẫu câu 13 và slide Ch3 trang 54, background-attachment có 2 giá trị là scroll (cuộn theo) và fixed (cố định ảnh nền khi cuộn trang).
Câu 50Chương 5: Thư viện jQuery
Sự kiện nào trong jQuery được kích hoạt ngay khi cây DOM của tài liệu HTML đã sẵn sàng (chưa cần đợi tải xong hình ảnh)?
Đáp án đúng:D ($(document).ready())
Giải thích: Theo slide Ch5 trang 19, 24, sự kiện `$(document).ready()` xảy ra khi cấu trúc cây DOM được nạp hoàn toàn, chạy sớm hơn sự kiện load của window.