mirror of
https://github.com/twbs/bootstrap.git
synced 2024-11-29 11:24:18 +01:00
c031584bcd
* SVG accessibility fixes - add `focusable="false"` to all SVGs, to stop IE from including the `<svg>` in its default focus cycle - completely hide decorative SVGs using `aria-hidden="true"` - add `role="img"` to meaningful/"content" SVGs, ensure they have an appropriate `<title>` and/or `aria-label` - simplify placeholder default title * Simplify usage of placeholder.svg in the docs - in most cases, no need for separate/redundant text and title (now that we make text itself part of the alternative text explicitly) - no need (expect in rare cirumstances) to describe the placeholder image (unless the look of the image is important/the actual content, as is the case with the image thumbnail class) * Simplify example.html rewriting of <svg> to <img> code sample - as the `alt` for the placeholder isn't really important, just add an ellipsis instead (otherwise, to be correct, we'd have to construct the whole "title+text" construct like we do now in the placeholder.svg itself * Change svgo configuration to retain role attribute and add/force focusable=false - regarding `focusable=false`, see https://github.com/svg/svgo/issues/1011 (which would be the "proper" SVGO fix) and the (hacky) solution https://github.com/svg/svgo/pull/817
58 lines
1.4 KiB
YAML
58 lines
1.4 KiB
YAML
# Usage:
|
|
# install svgo globally: `npm i -g svgo`
|
|
# svgo --config=build/svgo.yml --input=foo.svg
|
|
|
|
# https://github.com/svg/svgo/blob/master/docs/how-it-works/en.md
|
|
# replace default config
|
|
|
|
multipass: true
|
|
#full: true
|
|
|
|
# https://github.com/svg/svgo/blob/master/lib/svgo/js2svg.js#L6 for more config options
|
|
|
|
js2svg:
|
|
pretty: true
|
|
indent: 2
|
|
|
|
plugins:
|
|
# remove this with IE 11 is no longer supported
|
|
- addAttributesToSVGElement:
|
|
attributes:
|
|
- focusable: false
|
|
- cleanupAttrs: true
|
|
- cleanupEnableBackground: true
|
|
- cleanupIDs: true
|
|
- cleanupListOfValues: true
|
|
- cleanupNumericValues: true
|
|
- collapseGroups: true
|
|
- convertColors: true
|
|
- convertPathData: true
|
|
- convertShapeToPath: true
|
|
- convertStyleToAttrs: true
|
|
- convertTransform: true
|
|
- inlineStyles: true
|
|
- mergePaths: true
|
|
- minifyStyles: true
|
|
- moveElemsAttrsToGroup: true
|
|
- moveGroupAttrsToElems: true
|
|
- removeComments: true
|
|
- removeDesc: true
|
|
- removeDoctype: true
|
|
- removeEditorsNSData: true
|
|
- removeEmptyAttrs: true
|
|
- removeEmptyContainers: true
|
|
- removeEmptyText: true
|
|
- removeHiddenElems: true
|
|
- removeMetadata: true
|
|
- removeNonInheritableGroupAttrs: true
|
|
- removeTitle: false
|
|
- removeUnknownsAndDefaults:
|
|
keepRoleAttr: true
|
|
- removeUnusedNS: true
|
|
- removeUselessDefs: true
|
|
- removeUselessStrokeAndFill: true
|
|
- removeViewBox: false
|
|
- removeXMLNS: false
|
|
- removeXMLProcInst: true
|
|
- sortAttrs: true
|