我试图在内容可编辑= true的动态生成的div上“模拟”固定且不可编辑的页眉和页脚。
首先,我尝试使用此css放置页眉和页脚:
.header{
/*margin:-100px 0px;*/
margin-left: -2cm;
background-color: red;
vertical-align:middle;
text-align:center;
}
.footer{
background-color: darkgray;
margin-top: 735px;
height: 100px;
margin-left: -2cm;
}
并尝试启用首页上的标题,效果很好:
<div id="editor">
<div contenteditable="true" class="page" id="page-1">
<div class="header" contenteditable="false">
<img class="brasao" alt="brasao-rj*" src="https://i.imgur.com/ktmBQCS.png" />
<span>Procuradoria Geral do Estado do Rio de Janeiro</span>
</div>
<b>hello</b>
<div class="footer" contenteditable="false">
Rua Carmo do Cajuru 128
</div>
</div>
</div>
但是页脚未按预期工作,因为用户可以按下页脚以在div上放置更多内容。
在目前的方法中,我尝试在调用newPage.focus()之前附加“ header” div。但不幸的是,该行为与预期不符,从而使用户无法同时按下页眉和页脚。
const getHeader = () => {
let header = document.createElement('div');
header.setattribute('contenteditable',false);
header.setattribute('class','header');
let imgBrasao = document.createElement('img');
imgBrasao.class = 'brasao';
imgBrasao.setattribute('class','brasao');
imgBrasao.src = 'https://i.imgur.com/ktmBQCS.png';
let spanPGE = document.createElement('span');
spanPGE.textContent = 'Procuradoria Geral do Estado do Rio de Janeiro';
header.appendChild(imgBrasao);
header.appendChild(spanPGE);
return header;
};
const getFooter = () => {
let footer = document.createElement('div');
footer.setattribute('contenteditable',false);
footer.setattribute('class','footer');
let spanPGE = document.createElement('span');
spanPGE.textContent = 'Rua Carmo do Cajuru 128 - Centro RJ';
footer.appendChild(spanPGE);
return footer;
};
完整代码在这里:
(不带页眉和页脚的版本:https://jsitor.com/9J30B6YfG)
那么,如何在这些内容可编辑的div上模拟页眉和页脚?
谢谢!