H5系列之contenteditable


其實這個屬性很簡單,既然把它放到一個單獨的文章來說,他肯定有一些注意點要講

兼容性很好,兼容所有主流瀏覽器。

用法很簡單,只需要給你需要的標簽填上即可。

<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的標簽,那么他的內部文字是不能被編輯的,但是 外部的編輯,是可以把你整個標簽給刪除掉的。 所以得避開這種布局。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM