20 điểm bởi xguru 2024-06-21 | 7 bình luận | Chia sẻ qua WhatsApp
  • Tuần trước, CSS WG đã quyết định bổ sung if() nội tuyến vào CSS
  • Đây là một đề xuất từng nhiều lần bị từ chối trước đây, nhưng lần này đã được chấp nhận bằng cách tham chiếu tới cú pháp của style query cùng với media()supports()
  • Phản hồi từ các nhà phát triển rất tích cực. Hy vọng các trình duyệt sẽ ưu tiên tính năng này và đưa nó vào lộ trình phát triển

if() dùng để làm gì? Có thay thế style query không?

  • Nó đóng vai trò bổ sung cho style query. Khi có thể dùng style query thì dùng style query sẽ tốt hơn
  • Tuy nhiên, có những việc style query không làm được. Ví dụ, khi dùng custom property --variant để thiết lập màu nền, màu viền, màu chữ, biểu tượng, v.v.
  • Style query chỉ áp dụng cho phần tử con, nên không thể đặt khai báo trên chính phần tử đó.
  • Thuộc tính trình bày có các vấn đề về tính linh hoạt, độ ngắn gọn và tính nhất quán.
  • Dùng if() thì có thể đặt khai báo trên chính phần tử đó.
  • Các điều kiện media query và hỗ trợ cũng có thể được đưa vào cú pháp điều kiện của if().

Hiện đã được áp dụng trên trình duyệt chưa?

  • Vẫn chưa được áp dụng trên trình duyệt
  • Ngay cả trong kịch bản lạc quan, dự kiến cũng sẽ mất ít nhất khoảng 2 năm mới được triển khai
  • Hiện tại mới chỉ đạt được đồng thuận về tính năng, chưa phải giai đoạn triển khai

Đây có phải lần đầu CSS có cú pháp điều kiện không?

  • CSS ngay từ đầu đã có cú pháp điều kiện. Mọi selector đều là một dạng cú pháp điều kiện
  • Các quy tắc @media, @supports cũng là cú pháp điều kiện.

Điều này có biến CSS thành ngôn ngữ mệnh lệnh không?

  • Khác biệt giữa mệnh lệnh và khai báo nằm ở mức độ trừu tượng chứ không phải ở logic
  • Dù bổ sung logic điều kiện, CSS vẫn là một ngôn ngữ khai báo

Điều này có biến CSS thành ngôn ngữ lập trình không?

  • CSS từ lâu đã có thể được xem là một ngôn ngữ lập trình
  • Tiêu chí xem CSS là ngôn ngữ lập trình hay không không quan trọng
  • "Điều quan trọng là chuyên môn về CSS phải được công nhận"

"Bất kỳ ai biết nhiều ngôn ngữ lập trình nổi tiếng và cả CSS đều có thể nhận ra rằng CSS khó thành thạo hơn nhiều"

7 bình luận

 
budlebee 2024-06-21

Sắp tới sẽ có thể làm Doom bằng CSS..!

 
[Bình luận này đã bị ẩn.]
 
unsure4000 2024-06-21

Cái gì đây trời hahahahahahahahaha

 
tsboard 2024-06-21

Có vẻ như CSS đúng là học mãi học mãi vẫn không có điểm dừng. Cũng có cảm giác nó đang trở nên quá phức tạp thì phải...

 
savvykang 2024-06-21

Khoảnh khắc quả cầu tuyết nghiệp báo từ việc quyết định làm UI bằng HTML lại phình to thêm một lần nữa nhỉ.

 
princox 2024-06-21

Đây là CSS sao... hay là Javascript.... hay là CSSScript...

 
nemorize 2024-06-21

Cá nhân tôi thấy có vẻ hơi quá tay thì phải...