Thuộc tính toàn cục HTML contenteditable

Baseline Widely available *

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

* Some parts of this feature may have varying levels of support.

Thuộc tính toàn cục contenteditable global attribute là thuộc tính enumerated cho biết nếu phần tử có thể được chỉnh sửa bởi người dùng. Nếu có, trình duyệt sẽ sửa đổi widget của nó để cho phép chỉnh sửa.

Try it

<blockquote contenteditable="true">
  <p>Edit this content to add your own quote</p>
</blockquote>

<cite contenteditable="true">-- Write your own name here</cite>
blockquote {
  background: #eeeeee;
  border-radius: 5px;
  margin: 16px 0;
}

blockquote p {
  padding: 15px;
}

cite {
  margin: 16px 32px;
  font-weight: bold;
}

blockquote p::before {
  content: "\201C";
}

blockquote p::after {
  content: "\201D";
}

[contenteditable="true"] {
  caret-color: red;
}

Giá trị

Thuộc tính phải nhận một trong các giá trị sau:

  • true hoặc chuỗi rỗng, cho biết rằng phần tử có thể chỉnh sửa.
  • false, cho biết rằng phần tử không thể chỉnh sửa.
  • plaintext-only, cho biết văn bản thô của phần tử có thể chỉnh sửa, nhưng định dạng văn bản phong phú bị tắt.

Nếu thuộc tính được đặt mà không có giá trị, như <label contenteditable>Example Label</label>, giá trị của nó được coi là chuỗi rỗng.

Nếu thuộc tính này thiếu hoặc giá trị của nó không hợp lệ, giá trị của nó được kế thừa từ phần tử cha của nó: vì vậy phần tử có thể chỉnh sửa nếu cha của nó có thể chỉnh sửa.

Lưu ý rằng mặc dù các giá trị được phép bao gồm truefalse, thuộc tính này là thuộc tính enumerated chứ không phải thuộc tính Boolean.

Bạn có thể đặt màu được dùng để vẽ caret chèn văn bản bằng thuộc tính CSS caret-color.

Các phần tử được làm có thể chỉnh sửa, và do đó tương tác, bằng cách dùng thuộc tính contenteditable có thể được lấy tiêu điểm. Chúng tham gia điều hướng bàn phím tuần tự. Tuy nhiên, các phần tử có thuộc tính contenteditable được lồng trong các phần tử contenteditable khác không được thêm vào chuỗi tab theo mặc định. Bạn có thể thêm các phần tử contenteditable lồng nhau vào chuỗi điều hướng bàn phím bằng cách chỉ định giá trị tabindex (tabindex="0").

Nếu nội dung được dán vào phần tử có contenteditable="true", tất cả định dạng được giữ lại. Nếu nội dung được dán vào phần tử có contenteditable="plaintext-only", tất cả định dạng bị xóa.

Ví dụ

Dán nội dung vào contenteditable

Ví dụ này có hai phần tử <div> với contenteditable, phần tử đầu tiên có giá trị true và phần tử thứ hai có giá trị plaintext-only. Sao chép nội dung bên dưới và dán vào mỗi div để xem hiệu lực của chúng.

HTML

html
<h2>Pasting areas</h2>
<section class="pasting">
  <div class="wrapper">
    <h3>contenteditable="true"</h3>
    <div contenteditable="true"></div>
  </div>
  <div class="wrapper">
    <h3>contenteditable="plaintext-only"</h3>
    <div contenteditable="plaintext-only"></div>
  </div>
</section>

Đặc tả

Specification
HTML
# attr-contenteditable

Tương thích trình duyệt

Xem thêm