Các lượt nộp
    Danh sách bài
    Trang chủ
    Báo lỗi
    solution
    Đăng nhập
    Đăng nhập

    Đề bài: [Thiết kế Web] Đổi trạng thái lớp CSS

    📖Cần ôn lý thuyết? Đọc bài giảng Buổi 12: JavaScript cho Website (1): window, document, sự kiện, DOM — khóa Thiết kế Web

    Mô phỏng thao tác classList.toggle(class): nếu phần tử đang có lớp CSS đó thì bỏ đi, nếu chưa có thì thêm vào. Cho một cây phần tử, id của một phần tử và tên một lớp CSS, hãy thực hiện toggle rồi cho biết danh sách lớp CSS cuối cùng của phần tử đó.

    • Định dạng đầu vào:

      Câu này dùng chung định dạng "cây phần tử" mô phỏng DOM như sau: dòng đầu tiên là số nguyên n — số dòng mô tả cây. n dòng tiếp theo, mỗi dòng mô tả một phần tử theo cú pháp: tenThe[#id][.lop1.lop2...][[thuocTinh1=giaTri1;thuocTinh2=giaTri2]] [nội_dung_văn_bản] — trong đó tenThe là tên thẻ (chữ/số viết liền, không dấu cách); #id (nếu có) là định danh duy nhất; .lop (có thể lặp) là các lớp CSS gắn liền sau tên thẻ/id; phần trong dấu ngoặc vuông (nếu có) là danh sách thuộc tính dạng khoá=giá_trị, phân tách bằng dấu chấm phẩy ";"; phần còn lại sau một dấu cách (nếu có) là nội dung văn bản của phần tử. Mức thụt đầu dòng dùng đúng 2 dấu cách cho mỗi cấp lồng; cha của một phần tử là phần tử gần nhất phía trước nó có độ thụt nhỏ hơn đúng 1 cấp; dòng mô tả đầu tiên luôn ở độ thụt 0 và là gốc của cây. Khi cần liệt kê nhiều phần tử, luôn liệt kê theo đúng thứ tự xuất hiện trong danh sách n dòng (thứ tự duyệt trước — pre-order). Sau n dòng mô tả cây là một dòng chứa id của phần tử, tiếp theo là một dòng chứa tên lớp CSS cần toggle.

    • Ràng buộc đầu vào:

      1 ≤ n ≤ 20.

    • Định dạng đầu ra:

      Nếu không tìm thấy id, in 'KHONG_TIM_THAY'. Ngược lại in danh sách lớp CSS còn lại sau khi toggle, đã được SẮP XẾP THEO THỨ TỰ CHỮ CÁI, cách nhau một dấu cách; nếu không còn lớp nào, in 'RONG'.

    Ví dụ:

    Đầu vào:

    15
    html
      body
        header#head.top
          h1 Trang chu
        nav.menu
          a#lnk1.item Trang chu
          a#lnk2.item Gioi thieu
          a.item.active Lien he
        main#content
          div#box1.box[data-role=panel] Noi dung chinh
            p.text Day la doan van ban
            p.text.highlight Dong quan trong
          div#box2.box
            span Chao mung
        footer#foot Ban quyen 2026
    box1
    box
    

    Đầu ra:

    RONG

    Chủ đề

    🌐 Thiết kế WebThiết kế WebThiết kế Web: DOM — Truy vấn & Thao tácTất cả môn học

    Đang tải editor...