问题标签 [vendor-prefix]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
css - 我必须总是为每个浏览器声明不同的 webkit 样式吗?
我已经开始发现某些 css 声明的重复有点乏味。
例如,如果我想利用旋转变换并在 mozilla、chrome/safari 上执行类似来回旋转的操作,即我必须执行以下操作:
然后当然我需要单独应用这些:
在所有这些中,唯一不同的是 ms、moz 和 webkit,我觉得它们有点愚蠢。理想情况下,上面的 20 行代码可以精简到 8 行。但是每个浏览器似乎都在相互交战,因此各地的 css 编码人员都不得不受苦。
这是 CSS 和浏览器实现计划继续推进这些事情的方式吗?有没有更好更短的方法?这样做似乎不利于创造更 DRY 的编码体验。
jquery - 使用jQuery设置所有供应商前缀版本的“width:calc ...”?
我正在使用一个使用 jQuery 的项目,我需要使用 jQuery 动态设置基于 calc() 的宽度。问题是要让 calc 工作,CSS 需要看起来像这样:
CSS
当我尝试使用 jQuery$(selector).css('width', 'calc(33% - 50px)')
时,我无法使用多个供应商前缀版本的 calc 设置宽度。在jQuery中处理同一CSS属性的多个设置以允许供应商前缀的正确方法是什么?
javascript - 在非 mozilla 浏览器中应用 MozTransform(通过 JS)
背景资料
我正在开发一个可视表单设计器,没有编码经验的人可以在其中拖动表单域来创建表单并打印它们或保存为 HTML 文档。
我介绍了一种绘制直线的方法,该直线也可以以任何角度倾斜。我通过使用没有高度且仅使用底部边框的普通 div 来完成此操作。而当我应用CSS rotate transform
到 div 时,它可以任意角度倾斜。
问题
在设计器中,当用户更改线条的角度(斜率)时,我通过 Javascript 应用样式。像这样的东西:
当用户想要将表单保存为 HTML 时,我会获取 outerHTML 并将其返回给用户。在这里,如果我使用的是 Chrome,MozTransform
则生成的 HTML 中不存在该属性,如果我使用的是 Firefox,webkitTransform
则该属性不存在。
我尝试过的方法
我试图通过多种方式解决这个问题:
- 我没有通过
style
属性设置它,而是尝试通过style.cssText
属性设置它。它没有用。 - 我可以
outerHTML
在 HTML 生成期间获取 div 并插入属性,但这是一件非常麻烦的事情。 - 我可以通过为常用角度(0、45、90、135、180 等)提供 CSS 类来妥协,但我不想在这里太快放弃。
所以,我问你们 - 有没有更好的方法来解决这个问题?
在此先感谢,谢
什
css - 偏离当前标准的供应商前缀 css
我试图找到一个资源,其中包含偏离当前 W3C 标准的 CSS 属性的特定于浏览器的实现列表。
例如,假设 IE 支持这样的东西:
但是当提案成为候选推荐时,标准化的等价物是:
为了支持 CR 之前发布的 IE 版本,我想写:
谷歌搜索这些变化的列表并没有非常有成效,围绕供应商前缀有很多哀号和咬牙切齿,但没有很多“陷阱”列表。到目前为止,我发现最好的是临时提及更改(在这种情况下,-webkit-border-radius
),但那些很少记录实际的预期输入;他们往往只是举一个破碎的例子。
我找到了一个存在前缀的 OK 列表(以及它们的标准状态),但不幸的是,它没有提供发现我感兴趣的更改所需的那种细节。
那么,是否存在这样的列表?
我会选择部分列表,或者排除非常旧的浏览器的列表(例如,不关心 IE6)。我也只关心大型 3.1 浏览器(IE、Firefox、Webkit/Chrome/Safari 和Opera)。
我还关心 W3C 尚未解决的问题(如外观),这是一个足够困难的问题,无需担心供应商直接编造的问题。
google-chrome - 为什么rotateY(flip)css3动画在Chrome中闪烁?
我做了一个 jsFiddle:http: //jsfiddle.net/Grezzo/JR2Lu/
当您按下键盘上的 i 键时,图片会翻转以显示一些文本,但在翻转动画期间,当您在 Chrome 中查看时,它会闪烁(尤其是文本闪烁)。
(请注意,我使用的是无前缀的 JS 库,因此我不必使用浏览器特定的 CSS 属性作为前缀。)
为什么会闪烁,我该如何阻止它?
更新:在 XP 上运行的 Chrome 20.0.1132.47 m 上闪烁很明显,无论 OS X 10.7.4 Lion 的最新版本是什么(我现在不在我的 Mac 附近检查)
php - 是否有用于从 MAC 地址查找供应商的 PHP 库?
我有一个来自数据库的 MAC 地址列表。我想查找每个 MAC 地址的供应商,然后最终按供应商计算网络上的设备数量。
我相信我可以做到这一点,即从http://standards.ieee.org/develop/regauth/oui/oui.txt提供的文件中解析供应商前缀。
但我想知道是否有更好的方法?
internet-explorer - -webkit-transform 在 Internet Explorer 中不起作用
我发现这-webkit-transform: rotateZ(10deg);
在 Internet Explorer 9 中不起作用。使用 CSS3 可以使用什么来代替它?
css - 我还需要使用带有 CSS3 功能的前缀吗?
例如,对于 box-shadow 或过渡,我还需要使用“moz”或“webkit”之类的前缀吗?看起来……很奇怪,至少在 Unix 上的 Firefox 上,它可以完美地工作,没有任何前缀。
php - 检测哪个 webkit/moz/etc. 显示的前缀
我一直在为 PHP 开发一个 CSS 缩小器,除了一件事之外,它已经完成了:
我想让它检测用户的浏览器并确定用户是否需要border-radius、-webkit-border-radius、-moz-border-radius等。这样我就不必使用很长很烦人的组.
这将检测所有 -webkit、-moz 等边界半径实例并将它们合并,或者我会将 {vendor}border-radius 放入 CSS 文件中,然后将其替换为 -webkit-、-moz-、或者什么都没有。第一个是理想的,因为我希望它可以扩展到其他项目。
在我的一生中,我无法找到一个有效的 PHP 实现来准确检测要使用的前缀(我已经在我能想到的任何地方搜索/搜索)。
任何帮助将非常感激!