зеркало из https://github.com/mozilla/gecko-dev.git
105 строки
2.7 KiB
CSS
105 строки
2.7 KiB
CSS
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
|
|
*
|
|
* This Source Code Form is subject to the terms of the Mozilla Public
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
|
|
|
@namespace url(http://www.w3.org/2000/svg);
|
|
@namespace xml url(http://www.w3.org/XML/1998/namespace);
|
|
|
|
style, script {
|
|
display: none;
|
|
}
|
|
|
|
/*
|
|
* This is only to be overridden by the rule right below.
|
|
*
|
|
* NOTE(emilio): NodeCouldBeRendered in SVGUseElement.cpp relies on this.
|
|
*/
|
|
symbol {
|
|
display: none !important;
|
|
}
|
|
|
|
/*
|
|
* From https://svgwg.org/svg2-draft/struct.html#SymbolNotes:
|
|
*
|
|
* > The generated instance of a 'symbol' that is the direct referenced element
|
|
* > of a 'use' element must always have a computed value of inline for the
|
|
* > display property. In other words, it must be rendered whenever the host
|
|
* > 'use' element is rendered.
|
|
*
|
|
* NOTE(emilio): other browsers instead just replace the `<symbol>` element by
|
|
* an `<svg>` element while cloning, but they don't implement the SVG2
|
|
* selector-matching rules that would make that observable via selectors.
|
|
*/
|
|
symbol:-moz-use-shadow-tree-root {
|
|
display: inline !important;
|
|
}
|
|
|
|
svg:not(:root), symbol, image, marker, pattern, foreignObject {
|
|
overflow: hidden;
|
|
}
|
|
|
|
@media all and (-moz-is-glyph) {
|
|
:root {
|
|
fill: context-fill;
|
|
fill-opacity: context-fill-opacity;
|
|
stroke: context-stroke;
|
|
stroke-opacity: context-stroke-opacity;
|
|
stroke-width: context-value;
|
|
stroke-dasharray: context-value;
|
|
stroke-dashoffset: context-value;
|
|
}
|
|
}
|
|
|
|
foreignObject {
|
|
appearance: none ! important;
|
|
margin: 0 ! important;
|
|
padding: 0 ! important;
|
|
border-width: 0 ! important;
|
|
white-space: normal;
|
|
}
|
|
|
|
@media all and (-moz-is-resource-document) {
|
|
foreignObject *|* {
|
|
appearance: none !important;
|
|
}
|
|
}
|
|
|
|
*|*::-moz-svg-foreign-content {
|
|
display: block !important;
|
|
/* We need to be an absolute and fixed container */
|
|
transform: translate(0) !important;
|
|
text-indent: 0;
|
|
}
|
|
|
|
/* Set |transform-origin:0 0;| for all SVG elements except outer-<svg>,
|
|
noting that 'svg' as a child of 'foreignObject' counts as outer-<svg>.
|
|
*/
|
|
*:not(svg),
|
|
*:not(foreignObject) > svg {
|
|
transform-origin:0 0;
|
|
}
|
|
|
|
*|*::-moz-svg-text {
|
|
unicode-bidi: inherit;
|
|
vector-effect: inherit;
|
|
}
|
|
|
|
*[xml|space=preserve] {
|
|
white-space: -moz-pre-space;
|
|
}
|
|
|
|
*|*::-moz-svg-marker-anon-child {
|
|
clip-path: inherit;
|
|
filter: inherit;
|
|
mask: inherit;
|
|
opacity: inherit;
|
|
}
|
|
|
|
/* Make SVG shapes unselectable to avoid triggering AccessibleCaret on tap.
|
|
<mesh> will be supported in bug 1238882. */
|
|
circle, ellipse, line, mesh, path, polygon, polyline, rect {
|
|
user-select: none;
|
|
}
|