You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在不使用padding的情况下为<textarea>内文本添加上下左右间距?

实现全局文本缩进且不影响JS尺寸获取的方案

通常用padding做文本缩进,但你因为要复用JS尺寸获取代码,不想折腾像素级调整,text-indent又只对第一行生效,那可以试试这两种靠谱方案:

  • 方法一:transform位移(推荐)
    用transform: translateX()实现视觉层面的缩进,这种方式不会改变元素的盒模型尺寸,JS获取尺寸时完全不用调整,直接复用即可。
    示例代码:
.your-text-element {
  transform: translateX(1.5em); /* 换成你需要的缩进大小,用em适配性更强 */
}
  • 方法二:相对定位偏移
    如果要兼容不支持transform的旧浏览器,用position: relative搭配left属性也能达到同样效果,同样不会影响元素尺寸:
.your-text-element {
  position: relative;
  left: 1.5em;
}

当前效果:
当前效果

预期效果:
预期效果

内容的提问来源于stack exchange,提问作者Lethargistic

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.14 03:46:03