制作网页 <p></p>中如何多个空格
时间: 2023-08-11 13:06:12 浏览: 45
HTML中的多个空格会被解释器合并成一个空格,如果需要在HTML中显示连续的多个空格,可以使用空格字符的转义字符 ` `,这个字符代表一个不会被合并的空格。例如:
```html
<p>这里有 多个空格</p>
```
上述代码中,使用了7个 ` ` 来表示7个不会被合并的空格,可以根据实际需要增加或减少 ` ` 的数量,来显示不同数量的空格。
相关问题
这是一段模拟html标签的字符串'<p><b> </b>1<u>1<b>1 <i>2</i></b><i>2</i>2</u><i> </i></p>',用js写出3种方法,找到并清除p标签的innerText的前面和后面的空格,中间的空格不需要去除
问题1: 用js写出3种方法,找到并清除p标签的innerText的前面和后面的空格,中间的空格不需要去除。
答案:
方法一: 使用正则表达式替换
```javascript
let str = '<p><b> </b>1<u>1<b>1 <i>2</i></b><i>2</i>2</u><i> </i></p>';
let result = str.replace(/<p[^>]*>(.*?)<\/p>/, (match, p1) => {
return `<p>${p1.trim()}</p>`;
});
console.log(result);
```
方法二: 使用innerHTML和outerHTML进行替换
```javascript
let str = '<p><b> </b>1<u>1<b>1 <i>2</i></b><i>2</i>2</u><i> </i></p>';
let tempDiv = document.createElement('div');
tempDiv.innerHTML = str;
let pTag = tempDiv.querySelector('p');
pTag.innerText = pTag.innerText.trim();
let result = tempDiv.innerHTML;
console.log(result);
```
方法三: 使用DOM操作进行处理
```javascript
let str = '<p><b> </b>1<u>1<b>1 <i>2</i></b><i>2</i>2</u><i> </i></p>';
let tempDiv = document.createElement('div');
tempDiv.innerHTML = str;
let pTag = tempDiv.querySelector('p');
for (let i = 0; i < pTag.childNodes.length; i++) {
let childNode = pTag.childNodes[i];
if (childNode.nodeType === Node.TEXT_NODE) {
childNode.textContent = childNode.textContent.trim();
}
}
let result = tempDiv.innerHTML;
console.log(result);
```
在jsp中 <p>${bean.content}</p>输出的结果如果以<p> </p>结尾就把结尾的<p> </p>删掉然后在输出
好的,你可以使用以下代码实现:
```jsp
<%
String content = bean.getContent().trim();
if (content.endsWith("<p> </p>")) {
content = content.substring(0, content.length() - 14);
}
out.print("<p>" + content + "</p>");
%>
```
这段代码会首先使用 `trim()` 方法去除 `${bean.content}` 字符串两端的空格,然后判断字符串是否以 `<p> </p>` 结尾,如果是,则使用 `substring()` 方法去掉最后的 14 个字符,即 `<p> </p>`。最后得到的结果就是你想要的字符串。最后使用 `out.print()` 输出结果,包含 `<p>` 标签。