html - Firefox 中嵌套的 SVG foreignObject 字体大小显示错误
问题描述
我正在尝试制作通过 SVG 形状创建的自定义 CTA 按钮 - 我尝试使用 CSS,但这种方式(SVG)我不会陷入在悬停在形状之外时激活按钮的框模型问题。
问题是文本通过嵌套在 SVG 元素中的 foreignObject 显示:
<foreignObject x="5000" y="0" width="10000" height="17320.5">
<div xmlns="http://www.w3.org/1999/xhtml">
<h2>M1</h2>
</div>
</foreignObject>
在 Chrome 和 Firefox 中显示不同。它在 Chrome 上完全可见,但 Firefox 将其缩小,并且没有响应进一步将字体大小更改为更大的大小。
我创建了这个codepen代码片段来演示这个问题。
我尝试使用 SVG 文本元素解决 foreignObject 问题,但遇到了另一个问题 - Firefox 忽略或错误计算嵌套 SVG 元素的尺寸。
相同 SVG 嵌套元素的不同尺寸的屏幕 - Chrome , Firefox
有没有人遇到过这样的问题?我需要在两个浏览器上的这些按钮上显示一致的字体大小(FF 上的缩放字体几乎不可见)并且我想避免在这些 SVG 按钮上绝对定位 html span 元素 - 这将显示 2 个单独的按钮,一个是文本按钮,一个是向用户和网络爬虫提供图像。
解决方案
推荐阅读
- css - 在 Chrome Element 检查器中,带有对角紫色虚线的蓝色字段表示什么?
- c# - 如何反序列化 TcpClient 对 json 的响应
- mysql - Mysql 触发错误:SQLSTATE[42000]:语法错误或访问冲突:1231 变量 'MESSAGE_TEXT' 不能设置为 'NULL' 的值
- string - 如何编写自己的函数来匹配字符串模式?
- javascript - 如何解决我遇到的 npm 安装问题
- tensorflow - TF 代理:如何在 ActorDistributionNetwork 的层中使用批量标准化
- wordpress - 如何在 wordpress 中翻译自定义分类法
- javascript - React 中的全局 beforeEach 和 afterEach Jest
- javascript - JavaScript如何在值更改时运行函数
- excel - 从 Excel 2013 转换为 2016 时出现 Excel VBA 自动化错误