【发布时间】:2020-07-22 12:31:33
【问题描述】:
我有一个可编辑的内容 div,用户可以向其中添加元素。用户有一个带有所有可用标签的侧边菜单,可以通过单击每个标签来添加这些标签。也可以在每个标签之前/之后输入文本。
每个标签元素都有contenteditable="false",例如:
.keyword-item {
background-color: #EEFDE5;
font-weight: bold;
border-radius: 20px;
border: unset;
cursor: pointer;
margin: 0 0.25rem 0 0.25rem;
}
img {
padding-left: 2%;
}
span {
padding-right: 2%;
}
<div contenteditable="true" id="expression-textarea">
<label class="keyword-item" contenteditable="false">
<input type="hidden" value="1">
<img src="https://img.icons8.com/small/16/000000/download-2.png"/>
<span>bla</span>
</label>
<label class="keyword-item" contenteditable="false">
<input type="hidden" value="2">
<img src="https://img.icons8.com/small/16/000000/download-2.png"/>
<span>bla bla 2</span>
</label>
<label class="keyword-item" contenteditable="false">
<input type="hidden" value="18">
<img src="https://img.icons8.com/small/16/000000/download-2.png"/>
<span>bla2</span>
</label>
</div>
这有两个问题(至少在 Chrome 中):
- 当我使用键盘箭头浏览这些项目时,效果很好。但是,鼠标导航有点奇怪。似乎无法在第二个和第三个图标之间找到光标。
- 第一个项目只有在它前面聚焦并按
DEL键才能删除,它不会通过在它后面聚焦并按退格键来删除。
提前致谢
【问题讨论】:
标签: html css contenteditable