SVG 2难题

我们今天所知道和喜欢的SVG是“ SVG 1.1第二版”。 SVG 2在W3C上处于“编辑草稿”状态,并且存在无法逾越的严重风险,因为它的宪章在达到推荐状态之前可能不会更新。

Tavmjong Bah的部分原因是:

虽然令人震惊和出乎意料,但它并没有脱离左视野。 积极参加工作组的只有少数人,没有人代表任何浏览器供应商。 实际上,最近的两次“面对面”会议只有三名常规参与者与会,其中一位来自佳能(将在年底退出W3C会员),另外两名则是免费工作的受邀专家。

像Tavmjong一样,我最近也与Doug Schepers谈到了SVG2。他为我介绍了大多数主要的新功能。 这是一个很好的页面,可以查看其中的列表以及它们的状态。 之后,我的热门照片:

  • 对于外行Web开发人员来说,杀手级功能并不多,对我而言,周围的兴趣在减弱,也不足为奇。
  • 从技术上讲,SVG 2的一些真正有用的东西已经得到了不错的支持(例如non-scaling-stroke )。
  • 我通常是错误的东西。 SVG 2功能很有可能解锁我什至无法理解的奇妙事物。

一些功能是相当明显有用。 这是一个: z-index 。 目前,除了源顺序以外,没有其他方法可以控制SVG元素的堆叠顺序。 SVG 2支持z-index ,它可以正常工作并且很有用。 尚无浏览器支持它,并且被认为“有风险”。

三路舞

通常,我将网络上的新功能视为三者之间的三步曲:

  • 开发人员。 他们使用这些功能。 他们是想要的声音。 它们是实际使用的量尺。
  • 浏览器。 他们负责功能的实现。 他们是看门人。 他们对需要的东西有自己的想法。 他们是企业。
  • 眼镜。 他们记录了功能应如何工作。 浏览器希望他们了解如何实现功能,因为存在实现功能互操作性的动机。 他们是中间人。 他们还对需要的东西有自己的想法。

尽管最终每个人都必须同意,但他们中的任何一个都可以施加力量并推动其发展。 开发人员可能确实对需求大声疾呼,这可能会使浏览器激起想要为其提供服务的需求,或者使规范作者加入并定义其工作方式。 规范作者可能强烈希望改进和发展一种语言及其API,并沿自身发展。 浏览器可能强烈地认为他们的客户想要某种东西(或者提供某种东西在商业上很有意义),并且会尽早实施。

也有很多交叉。 浏览器供应商人员可以充当规范人员。 开发商无处不在。

SVG 2感觉就像是规范驱动的努力。 目前,开发人员对SVG的兴趣很大,但对SVG缺点的念头也许不是很多。 我发现开发人员大多只是想将自己的头脑束之高阁。 但是,这种新发现的热情可能促使长期从事SVG规范的人们朝着SVG 2前进。

作为规范驱动的工作,他们有责任激发其他各方采取行动。 到目前为止,这是进展不顺利的部分。 从开发人员的角度来看,我认为这是缺乏杀手级功能的 。 从浏览器的角度来看,再次是Bah:

只有两种重要的浏览器实现:Blink(Chrome / Opera)和Gecko(Firefox)。 其中,尽管Gecko实施了更多的SVG 2,但只有Blink才有资源来快速完全实施新功能。Chrome占据了浏览器市场份额的巨大领先地位(将近75%)。 Google习惯于单方面删除Blink中不喜欢的功能,基本上是说这些功能已从规范中删除。

WebKit(Safari)和Edge是另外两个重要的浏览器实现,其追随者多于领导者,并且市场份额也相对较小(分别为5%和4%)。 例如,Microsoft明确表示,直到该规范成为候选推荐标准,他们甚至都不会关注SVG 2。

阅读:眨眼做任何想做的事; 壁虎很慢; 边缘不会碰它; WebKit将等待。

它变得更糟。

四路舞蹈

对于SVG 2,涉及的第四大参与者是: Software

据我估计,Web上使用的绝大多数SVG不是由开发人员直接编写的,而是由软件输出的。 Inkscape,Adobe Illustrator,Sketch,Affinity Designer…有大量导出SVG的软件。

让我们采用另一个SVG 2功能,即bB命令作为路径语法的一部分。 通过允许您更改后续路径命令的轨迹角度,它看起来将允许更有效的路径输出。

那太好了,但是为什么像Adobe这样的公司会这么做呢? 如果他们实现了它,则冒着输出浏览器不支持的SVG的风险,这是没有用的,肯定会激怒客户。 他们几乎肯定需要等待浏览器的支持非常牢固,然后再进行类似的工作。 这就引发了一个恶性循环:为什么浏览器会实施没有人准备利用的东西?

所以,即使规范获取到成品的一些状态浏览器咬它,我们还在软件的怜悯也考虑它的优势。

从胆量

在不了解更多信息的情况下,我倾向于与浏览器供应商达成协议。 巴赫报告:

浏览器供应商的普遍共识是,应该完成SVG 2,但应该将其限制为解决SVG 1.1 2nd Edition以及一些已选择的新功能(如“ paint-order”)已解决的问题。通过多个浏览器。 新功能(网格,舱口等)应删除。

听起来像是删除新功能很痛苦,但可能是您不得不放弃货车才能通过通行证的宝箱。

翻译自: https://css-tricks.com/svg-2-conundrum/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值