Thuộc tính style.right trong HTML DOM dùng để **lấy hoặc đặt** vị trí bên phải của một phần tử **được định vị (positioned element)** — tức là có position là relative, absolute, fixed, hoặc sticky. Giá trị xác định khoảng cách từ mép phải của **containing block** (khối chứa) đến mép phải của phần tử.
Cú pháp
// Lấy giá trị (string, có đơn vị) var rightVal = element.style.right; // Đặt giá trị element.style.right = "20px"; // hoặc "10%", "auto", "inherit", "initial"
Các giá trị hợp lệ
| Giá trị | Giải thích |
|---|---|
auto (mặc định) |
Trình duyệt tự tính (thường = 0 nếu left đã đặt, hoặc căn trái) |
<length> |
Khoảng cách cố định: px, rem, em, vh... VD: 20px, 2rem |
<percentage> |
Phần trăm chiều rộng containing block: 10%, 50% |
inherit |
Kế thừa từ phần tử cha |
initial |
Trở về mặc định (auto) |
Ví dụ: Di chuyển hộp vuông sang phải
<!DOCTYPE html>
<html>
<style>
body { color: #000; height: 100vh; }
.btn { background: #db133a; border: none; height: 2rem; border-radius: 2px; width: 40%; display: block; color: #fff; outline: none; cursor: pointer; margin: 1rem 0; }
.box {
width: 100px; height: 100px; background: #db133a6b;
position: relative; /* Bắt buộc để right hoạt động */
}
.show { font-size: 1.2rem; margin: 1rem 0; }
<body>
<h1>Demo: style.right</h1>
<div class="box" id="box"></div>
<button onclick="moveRight()" class="btn">Đẩy sang phải 400px</button>
<div class="show" id="msg"></div>
<script>
function moveRight() {
var box = document.getElementById('box');
box.style.right = "-400px"; // Âm = đẩy ra ngoài bên phải
document.getElementById('msg').textContent = "right = " + box.style.right;
}
</script>
</body>
</html>
Kết quả:
Nhấn nút → Hộp vuông hồng dịch chuyển 400px ra khỏi màn hình bên phải (vì right: -400px đẩy mép phải của box ra xa mép phải container 400px).
Lưu ý quan trọng
- Chỉ hoạt động khi
position != static(mặc định). Phải setposition: relative/absolute/fixed/stickytrước. rightvàleftcùng set:leftưu tiên (trừ khi direction: rtl).element.style.rightchỉ đọc/ghi **inline style**. Để đọc computed style (kế thừa từ CSS):getComputedStyle(el).right.- Dùng
right: 0+position: fixed/absoluteđể dính mép phải màn hình/container.
Ứng dụng thực tế
- Menu trượt (sidebar) từ phải:
right: -300px→right: 0(transition). - Tooltip/popover định vị so với mép phải.
- Layout RTL (right-to-left) languages.