当前位置: 首页 > 知识库问答 >
问题:

SVG占优势-基线在Safari中不起作用

阎冠玉
2023-03-14

我试图定位SVG文本,使它的站点完全高于它所在的Y位置。text-after-edge的主要基线似乎是此设置的适当设置。

这在Chrome中工作得很好,但在Safari中,text-after-edge以Y位置为中心呈现文本。

我进一步探讨了这段代码:

正如您所看到的,一些主要的基线效果是不同的。

共有1个答案

澹台承
2023-03-14

Jakob建议使用dy是最简单、最可靠的解决方案。我还建议您使用em单位定义的值。

1em是字体字形从最低升降线底部到最高升降线或重音顶部的高度。

降压器通常是EM的四分之一左右。因此,要将文本上升到该行上方,请使用dy=“-0.25em”。相应地,要挂在行下面,请使用dy=“0.75”。请参阅下面的示例

<svg width="100%" height="200">
  <line y1="100" x2="100%" y2="100" stroke="grey"/>
  <text x="20" y="100" font="Arial, sans-serif" font-size="40">
    <tspan>Hanging</tspan>
    <tspan y="100" dy="-0.25em">Hanging</tspan>
    <tspan y="100" dy="0.75em">Hanging</tspan>
  </text>
</svg>
 类似资料:
  • 问题内容: 由于某些原因 在Safari 11中显示为未旋转。 Chrome 63可以正确呈现它。 有什么问题? 谢谢! 问题答案: 在SVG 1.1中,元素不支持转换属性。在SVG2中,建议它们应该。 Chrome和Firefox实现了SVG 2规范的这一部分,而Safari尚未实现,而IE11则从未实现。 在不支持SVG2功能的浏览器中,可以通过用元素替换元素或在元素上创建子元素并将转换放在元

  • 问题内容: 在我的聊天应用程序中,我需要在关闭应用程序时从user确认。 所以我使用了确认警报和logout()。 但是这两个功能都可以在IE和Chrome中使用。(应用程序运行正常) 在Opera中无法使用,并且我的消息不会在Firefox中显示。 在Safari,Opera和Firefox中不起作用。 我的javaScript代码为 我也尝试过使用JQuery同样的功能, 问题答案: 通过将A

  • 我正在尝试创建一个带有渐变边框的自定义按钮。此时,我得到了在Chrome和Firefox中工作的按钮。 我已经跟随了一个在线指导如何创建一个渐变的自定义边框,也是圆角的。指南的链接可以在这里找到:documentation。 但由于某些原因,相同的样式在Safari中不起作用。我不知道为什么会这样。 这里是我用来创建按钮的CSS代码。我还在底部包含了一个样式相同的片段。请注意,代码段有一些额外的类

  • 我有一个SVG线条动画绘制文本,但它似乎不能在Safari或Internet Explorer上工作。是不是我漏了什么? http://codepen.io/anon/pen/vygdzv CSS

  • 我有一个SVG径向渐变可以在Chrome、Firefox甚至Internet Explorer中工作,但在Safari中不工作。你知道怎么在Safari里用这个吗? 下面是代码页:http://codepen.io/fractorr/pen/ovayvv

  • 问题内容: 我有一个简单的设置,可以加载“帮助”样式的窗口并将其滚动到页面上的特定点。或多或少的代码看起来像这样: 滚动的目标和软糖的值由放置在页面上的几个提示确定,我对该机制的任何部分都没有问题。在Firefox和IE8中,上述代码的工作方式与我想要的完全一样:滚动框(在本例中为页面正文)在被告知这样做时,会将包含的内容正确滚动到窗口中的正确点。 但是,在Chrome和Safari中,对scro