我没有访问网页的HTML或PHP的权限,只能通过CSS进行编辑.我一直在对一个站点进行修改,并通过::after::before个伪元素添加文本,我发现应该使用转义Unicode来处理添加的内容之前或之后的空格之类的事情.

如何在content属性中添加多行?

在示例中,HTML break line元素是only to visualize,这是我想要实现的:

#headerAgentInfoDetailsPhone::after {
  content: 'Office: XXXXX <br /> Mobile: YYYYY ';
}

推荐答案

content个属性声明:

通过在"content"属性后的一个字符串中写入"\A"转义序列,作者可以在生成的内容中包括换行符.插入的换行符是still subject to the 'white-space' property..有关"\A"转义序列的详细信息,请参阅"字符串"和"字符和大小写".

所以你可以使用:

#headerAgentInfoDetailsPhone:after {
  content:"Office: XXXXX \A Mobile: YYYYY ";
  white-space: pre; /* or pre-wrap */
}

http://jsfiddle.net/XkNxs/

但是,在转义任意字符串时,建议使用\00000a而不是\A,因为新行后面的任何数字或[a-f]字符都可能表示unpredictable results:

function addTextToStyle(id, text) {
  return `#${id}::after { content: "${text.replace(/"/g, '\\"').replace(/\n/g, '\\00000a')} }"`;
}

Css相关问答推荐

无法瞄准元素

如何将bslib::card()中的扩展按钮移到右上方,其中full_screen = TRUE?

CSS立方体覆盖

如何在移动屏幕尺寸上包装元素?

SVG文本在移动浏览器上增长并溢出

如果父元素是弹性元素,则不会显示带有纵横比的空div

如何使用Bootstrap在切换按钮旁边的手风琴标题中添加链接?

根据子索引计算变换 CSS 参数

如何按列垂直对齐项目,但不在列内水平对齐

最多 2 行的 Flex 水平滚动

tailwind 类的别名?

使用 display:inline-block 渲染多行文本组件,行间有白色间隙

弹簧靴.一个文件捕获 CSS 其他没有

在样式化组件中使图像重叠

页脚上方的图像分隔线使用 ::before 伪元素

CSSzoom 高度以匹配宽度 - 可能与外形尺寸

跨浏览器方法使子 div 适合其父级的宽度

CSS 插入边框

当子元素水平溢出时,为什么忽略父元素的右填充?

行高百分比不起作用