angular - 带有角度材料的文本区域在启动页面上的大小不正确
问题描述
我面临一个我无法理解的奇怪问题。当我的一个页面显示时,我的 textarea 被剪切了,正如我们在这张图片中看到的那样
但是当我只调整一点页面大小或者我只是打开控制台(也可能调整页面大小)时,文本会完全显示
这是一个表单,我可以编辑它,当我这样做并保存时,文本也会完全显示,问题仅在页面刚刚启动时发生。
我像这样使用有角度的材料和简单的文本区域:
<textarea matInput
cdkTextareaAutosize #autosize="cdkTextareaAutosize"
cdkAutosizeMinRows="1" cdkAutosizeMaxRows="25"
</textarea>
仅供参考,它位于“ng-template”中,但不要认为它会改变任何东西。我不想像您想象的那样固定特定的高度,因为它应该是动态的,具体取决于文本长度。
你知道它是从哪里来的吗?我该如何解决它?谢谢您的回答。
解决方案
它不起作用的核心原因textarea
是在渲染之前计算了大小。尝试删除 autoheight
属性,并为其设置一个固定值line-height
。
例子:
textarea {
/*height: auto !important;*/
resize: none;
line-height: 3 !important;
}
希望这有帮助。
推荐阅读
- javascript - Google App Maker,如何创建复制到剪贴板功能
- android - Gradle 显示依赖项错误
- html - 模板似乎只等待 Observable 产生一次
- linux - Bash 从给定的 PID 读取标准输入
- spring-boot - 有没有办法知道 Axon 框架何时“准备好”
- c# - 从表单 1 的文本框中通过数组创建 10 个名称,然后通过列表框在表单 2 上显示所有名称
- android - 移动应用中广告的广告评论
- php - 关于货币价值的php算术
- mysql - 根据同一个表中的值从一个表中获取值
- android - Android NDK - 静态库无法链接