其實這個屬性很簡單,既然把它放到一個單獨的文章來說,他肯定有一些注意點要講
兼容性很好,兼容所有主流瀏覽器。
用法很簡單,只需要給你需要的標簽填上即可。
<div contenteditable="true">我是一個div</div>
那么會出現一個神奇的效果。(文字可以編輯)
語法也很簡單。
contenteditable="true" (可以編輯)
contenteditable="false" (不可以編輯)
如果是嵌套關系的呢?
<div contenteditable="true"> 我是一個div1 <div>我是div2,沒有contenteditable屬性</div> </div>
你會發現,即使是嵌套關系,里面的標簽也沒有contenteditable 屬性,也是可以編輯的,這又是為啥呢? 其實這個屬性有繼承關系,只要父級有,那么子級也會繼承下來,所以說,子級也是可以編輯的啦。
如果子級不想編輯,給子級添加上contenteditable=“false” 即可
最后說一下,下面這種特殊情況,按理來說,span 的 姓名 和 年齡都是不可以編輯的對吧。
<div contenteditable="true"> <span contenteditable="false">姓名:</span>小明<br> <span contenteditable="false">年齡:</span>20歲 </div>
看下下面的操作。
然后只要從 上面一行開始編輯,就會發現,即使是 contenteditable=“false” 的兩個 span里面的文字,都被刪除了。這又是為啥呢,這是因為,被標記了 false的標簽,那么他的內部文字是不能被編輯的,但是 外部的編輯,是可以把你整個標簽給刪除掉的。 所以得避開這種布局。