开发者社区> 问答> 正文

绝对定位设置padding发生文字换行的问题?

demo如下https://jsfiddle.net/y4okbek1/31点击预览
不知加个padding为什么p标签会换行?

展开
收起
杨冬芳 2016-06-17 11:22:33 2115 0
1 条回答
写回答
取消 提交回答
  • IT从业

    首先,理清一个概念,transform: translate(-50%,-50%);是一个二维变换,它只是一个渲染效果,而不是布局本身。决定文字是否换行的是布局效果。

    默认状态下,行内文本在到达元素的包含块(Containing Block)边缘时,会换行。在你的例子中,div1是绝对定位的div2的包含块。

    你可以在调试工具中临时去掉transform: translate(-50%,-50%);观察(这时候相当于就是没有经过渲染修改的布局状态),会发现div2就是从中间位置开始,随着文字数目增多,或者padding增加内边距,当到达边缘后,就开始换行
    screenshot
    如果文字不换行,考虑减小内边距或直接设置white-space: nowrap;。

    2019-07-17 19:42:17
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载