×

Cách sử dụng direction - Định hướng văn bản trong CSS

CSS giúp các nhà phát triển web tạo ra những trang web đẹp mắt và dễ sử dụng bằng cách định nghĩa cách mà nội dung được hiển thị. Một trong những tính năng hữu ích của CSS là khả năng định hướng văn bản. Tính năng này rất quan trọng trong việc xây dựng giao diện người dùng thân thiện cho các ngôn ngữ khác nhau, đặc biệt là ngôn ngữ viết từ phải sang trái như tiếng Ả Rập hay tiếng Hebrew. Bài viết này sẽ giới thiệu cách định hướng văn bản trong CSS một cách hiệu quả.

Thuộc Tính direction

Thuộc tính đầu tiên cần đề cập đến là direction. Đây là thuộc tính cơ bản nhất liên quan đến định hướng văn bản. direction cho phép bạn điều khiển hướng của dòng chảy văn bản trong một phần tử HTML.

Cú pháp cơ bản của direction như sau:

element {
    direction: ltr; /* hoặc rtl */
}
  • ltr (left to right): Văn bản sẽ di chuyển từ trái sang phải. Đây là giá trị mặc định và phù hợp với các ngôn ngữ như tiếng Anh, tiếng Việt.
  • rtl (right to left): Văn bản sẽ di chuyển từ phải sang trái. Thích hợp với các ngôn ngữ như tiếng Ả Rập và tiếng Hebrew.

Ví dụ sử dụng:

body {
    direction: rtl;
}

Trong ví dụ này, toàn bộ nội dung của trang web sẽ được hiển thị từ phải sang trái.

Thuộc Tính unicode-bidi

Để kiểm soát văn bản phức tạp hơn, đặc biệt là khi có sự kết hợp giữa các đoạn văn bản có định hướng khác nhau, CSS cung cấp thuộc tính unicode-bidi.

Cú pháp cơ bản của unicode-bidi như sau:

element {
    unicode-bidi: normal; /* hoặc embed, bidi-override */
}
  • normal: Giá trị mặc định. Văn bản sẽ được hiển thị theo hướng định sẵn bởi thuộc tính direction.
  • embed: Tạo ra một khối văn bản độc lập với phần còn lại của tài liệu. Hướng của nó được quyết định bởi thuộc tính direction.
  • bidi-override: Ghi đè hoàn toàn định hướng của văn bản theo giá trị direction, bất kể các kí tự trong văn bản đó là gì.

Ví dụ sử dụng:

.right-to-left {
    direction: rtl;
    unicode-bidi: embed;
}

Sử Dụng writing-mode để Định Hướng Các Khối Văn Bản

Ngoài việc định hướng dòng chảy văn bản hàng ngang, CSS còn cung cấp khả năng định hướng văn bản theo chiều dọc hoặc lộn ngược thông qua thuộc tính writing-mode.

Cú pháp của writing-mode như sau:

element {
    writing-mode: horizontal-tb; /* các giá trị khác: vertical-rl, vertical-lr, sideways-lr, sideways-rl */
}
  • horizontal-tb: Từ trái qua phải, từ trên xuống dưới.
  • vertical-rl: Từ trên xuống dưới, từ phải sang trái.
  • vertical-lr: Từ trên xuống dưới, từ trái sang phải.
  • sideways-rlsideways-lr: Các văn bản sẽ được viết theo chiều ngang nhưng xoay 90 độ.

Ví dụ sử dụng:

.vertical-text {
    writing-mode: vertical-rl;
}

Kết Hợp Các Thuộc Tính

Cùng nhau, những thuộc tính này cho phép bạn tạo ra giao diện phong phú và đa dạng về định hướng văn bản, phù hợp với nhiều kịch bản khác nhau.

Ví dụ tổng hợp:

div {
    direction: rtl;
    unicode-bidi: bidi-override;
    writing-mode: vertical-rl;
}

Trong ví dụ trên, văn bản trong thẻ div sẽ từ phải sang trái, ghi đè bất kỳ định hướng nào khác và hiển thị theo chiều dọc từ trên xuống dưới, phải sang trái.

Kết Luận

Cách định hướng văn bản bằng CSS là một kỹ thuật hữu ích giúp tối ưu hóa trải nghiệm người dùng cho các ngôn ngữ khác nhau. Việc hiểu rõ và sử dụng hợp lý các thuộc tính như direction, unicode-bidi, và writing-mode sẽ giúp bạn xây dựng những trang web không chỉ đẹp mắt mà còn thân thiện và dễ sử dụng toàn cầu.

Comments