From 77d6977e2824177111c6f1708da5f09b1f5c7cf9 Mon Sep 17 00:00:00 2001 From: Justin Obara Date: Mon, 12 Aug 2019 12:11:45 -0400 Subject: [PATCH 1/6] FLUID-6391: Updating docs to include info about Infusion-Icons --- .../images/mac-characters-window.png | Bin 40928 -> 0 bytes src/documents/images/mac-font-book.png | Bin 61146 -> 0 bytes .../HowToCreateAndUseFontIcons.md | 113 ++++++++++++------ 3 files changed, 75 insertions(+), 38 deletions(-) delete mode 100644 src/documents/images/mac-characters-window.png delete mode 100644 src/documents/images/mac-font-book.png diff --git a/src/documents/images/mac-characters-window.png b/src/documents/images/mac-characters-window.png deleted file mode 100644 index fa3c33e11ce0135c3330bb2cc3a31c00e3cab7c9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 40928 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

853Z)k`{)Ikv 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 V;7e~6R$&l$sVHeE7Acqp{U7#giTwZo diff --git a/src/documents/images/mac-font-book.png b/src/documents/images/mac-font-book.png deleted file mode 100644 index f5711f7a52425392b410515843ac8469db0b56d5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 61146 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 ZKs3dlYL1-L@<71DQ1_lroz|o1{|7entdRf! diff --git a/src/documents/tutorial-iconFonts/HowToCreateAndUseFontIcons.md b/src/documents/tutorial-iconFonts/HowToCreateAndUseFontIcons.md index 98536ddc..c0085968 100644 --- a/src/documents/tutorial-iconFonts/HowToCreateAndUseFontIcons.md +++ b/src/documents/tutorial-iconFonts/HowToCreateAndUseFontIcons.md @@ -15,17 +15,16 @@ Some of the advantages of icons include: * Can add strokes, gradients, shadows, and etc.; * Convert to text (with ligatures); * Ligatures are read by screen readers; -* Changing icons to fonts is as simple as changing the font-family in CSS. +* Changing icons used is as simple as changing the font-family in CSS. However, there are some shortcomings to keep in mind: * Icon fonts are generally mono tone in colour. * IE8 and IE9 do not support ligatures. -* Globally changing fonts will cause the text vs the icon to show. +* Need to use `!important` or scoping to prevent globally changing fonts from swapping out the icons. * In situations where there is existing text accompanying an icon, specific markup containers need to be created for the icon. -* Modifying icon fonts is as involved as generated a new icon graphic in the "traditional" way - there is no real time - saved in that regard. +* Modifying the icon font requires generating a whole new font file ## Procedure Summary @@ -56,7 +55,8 @@ Use illustration software to create an SVG version of the icon you want to use a Tips: -* The dimensions of the graphic doesn't matter since everything will be scaled by the browser's font-rendering. +* The dimensions of the graphic doesn't matter since everything will be scaled by the browser's font-rendering. However, +all of the icons should be sized and drawn in a consistent fashion. * Work in binary (i.e. black and white) and do not apply effects such as drop-shadows or embossing. * Sometimes the font conversion of the SVG may not work properly, so be prepared to edit your SVG file again. * Overlapping regions of shapes may cause a subtraction when converted in IcoMoon (i.e. it will render as transparent) - @@ -64,7 +64,41 @@ Tips: Download Example SVG file: [pencil-icon-01.svg](../images/pencil-icon-01.svg) -## Step 2. Using IcoMoon to Generate Font +Consult the [Infusion Icons Visual Style Guide] +(https://wiki.fluidproject.org/display/fluid/Infusion+Icons+Visual+Style+Guide) for how icons are created for Infusion. + +## Step 2. Generating the Font + +### Using Infusion-Icons to Generate the Font + +This is the preferred method for use with Infusion related projects because it makes modifying the font and tracking PUA +codes much simpler. Once the [Infusion-Icons npm module](https://www.npmjs.com/package/infusion-icons), and all its +dependencies, are installed, fonts can be generated with a config file. + +(See: [Infusion-Icons README](https://github.com/fluid-project/infusion-icons/blob/master/README.md) for more detailed +instructions) + +#### Example +```json +{ + "src": [ + "svg/iconName.svg" + ], + "options": { + "font": "CustomIcons", + "codepoints": { + "iconName": "0xE000" + } + } +} +``` + +```bash +# generating an Icon Font from a config file +grunt build --config="path/to/config.json" +``` + +### Using IcoMoon to Generate the Font Steps: @@ -77,7 +111,7 @@ Steps: * Note: selecting the "Preferences" button will give you options to name your CSS classes and files. It i recommended you use identifiers 5. Extract the contents of the ZIP file. - * The files we are most interested in are the `./fonts/*.eot`, `./fonts/*.ttf`, and the `./index.html` files. + * The files we are most interested in are the `./fonts/*.eot`, `./fonts/*.woff`, and the `./index.html` files. 6. To verify that the font looks proper, open the `./index.html` file in a web browser. If the icon doesn't look right, you may need to edit the SVG file and repeat the font generation process. @@ -107,8 +141,7 @@ Next, add the new font to the CSS markup. @font-face { font-family: 'CustomIcons'; /*Specify the new font */ src: url('../fonts/CustomIcons.eot?#iefix') format('embedded-opentype'), /* IE8 fix. */ - url('../fonts/CustomIcons.ttf'), - url('../fonts/CustomIcons.eot'); + url('../fonts/CustomIcons.woff'); } #contact_form { @@ -123,8 +156,7 @@ Finally, add the new icon into the BEFORE pseudo class and delete any references @font-face { font-family: 'CustomIcons'; /*Specify the new font */ src: url('../fonts/CustomIcons.eot?#iefix') format('embedded-opentype'), /* IE8 fix. */ - url('../fonts/CustomIcons.ttf'), - url('../fonts/CustomIcons.eot'); + url('../fonts/CustomIcons.woff'); } #contact_form { @@ -143,9 +175,9 @@ more information on this, please see ## Unicode for font -_The Unicode (or "PUA code") for the custom font can be found in the HTML and CSS file generated by Ico Moon. If the +_The Unicode (or "PUA code") for the custom font, generated by IcoMoon, can be found in the HTML and CSS file. If the HTML and CSS files are unavailable, you can retrieve the Unicode using one of the methods listed under the section -"[Dealing with the TTF Unicode](HowToCreateAndUseFontIcons.md#dealing-with-the-ttf-unicode)" below._ +"[Dealing with the TTF Unicode](HowToCreateAndUseFontIcons.md#dealing-with-the-unicode)" below._ **However, there is a problem** - the new icon font will replace the existing font of its container and all child *elements and therefore removing any font styling you may have wanted to preserve. The next section will outline common @@ -227,8 +259,8 @@ It's common for images to be used in functional ways such as acting as a button ``` -The problem here is if we replace the image in the anchor with an icon font, any text descriptions (the alt text) will -be removed as well - causing a possible usability and accessibility issue. +The problem here is if we replace the image in the anchor with an icon font, any text descriptions (the alt text) + ```html /* The alt text is now gone, causing a usability and accessibility problem. */ @@ -266,7 +298,8 @@ rendered differently in Firefox in Mac OS X and in Windows despite being the sam ![a partially displayed font icon on firefox, Windows system](../images/Icon-FF-windows.png) To avoid these rendering problems, when creating the SVG images avoid using fine details - not only does this help -eliminate details in the icon font being lost during rendering, it also helps improve usability through clearer icons. +eliminate details in the icon font being lost during rendering, it also helps improve usability through clearer +icons. ### IE8 Compatibility @@ -286,11 +319,18 @@ The IE8 fix needs to be the first URL in the list of sources otherwise the font Reference: [http://www.fontspring.com/blog/the-new-bulletproof-font-face-syntax](http://www.fontspring.com/blog/the-new-bulletproof-font-face-syntax) -### Dealing with the TTF Unicode +### Dealing with the Unicode + +Infusion-Icons generates the icon font based off of a config where the Unicode values can be specified; +IcoMoon conveniently generates an HTML and CSS file for custom fonts which contain the Unicode to be used in your +markup. However, if the information about the Unicode values is lost, here are two ways to obtain them. + +#### Obtaining Unicode on the Web -Ico Moon conveniently generates an HTML and CSS file for custom fonts which contain the Unicode to be used in your -markup. However, in the scenario the original CSS or HTML files are unavailable, here are two ways to obtain the Unicode -on Windows and Mac OS X 10.6+. +1. Open a tool like [FontDrop!](https://fontdrop.info) +2. Upload the font file +3. Inspect the icon information to find the Unicode value. + * In FontDrop! the Unicode value will appear by hover over or clicking on the glyphs. #### Obtaining Unicode in Windows @@ -301,26 +341,23 @@ on Windows and Mac OS X 10.6+. ![Unicode character map](../images/Unicode-charmap.png) -#### Obtaining Unicode in Mac OS X 10.6 or Later +## What about SVG Icons -1. Enable Special Characters support as documented in this Apple Knowledge Base article: - [OS X Lion: Enter special characters and symbols](http://support.apple.com/kb/ph3871) -2. Install the custom TTF font to the OS (usually double-click, then "Install"). -3. Launch the Font Book application. -4. Also launch the Notes application. -5. In Font Book, locate the custom font under Collection > All Fonts. Select it. The custom font should now appear in - the window. -6. In Font Book, select / highlight the characters from the custom font. Select Copy (Command+C or right-click -> Copy). -7. In Notes, Paste the text (Command+V or right-click -> Paste). The custom font should appear in Notepad. -8. In Notes, select the pasted text. Then open the "Edit" menu an select "Special Characters". -9. Now a "Characters" window appears with "Search" results containing each character selected in the previous step. -10. Select an icon in the "Character" panel. The Unicode will appear in the right column. +SVG icons can be used as an alternative to icons supplied through an icon font. Below is a quick summary of the pros and +cons of SVG Icons. For more information on SVG Icons see the +[Research SVG Icons](https://wiki.fluidproject.org/display/fluid/Research+SVG+Icons) wiki page. -![Mac OS X Font Book](../images/mac-font-book.png) +### Benefits of SVG Icons -Above: An image showing the Mac OS X Font Book application with the custom characters highlighted. +* Can use multiple colours +* Can support complex icons including multiple colours + * although it increases the complexity to style with CSS +* Don't have to compile into a font -![Mac OS X Characters window](../images/mac-characters-window.png) +### Drawbacks of SVG Icons -Above: An image showing the Mac OS X Characters window. The Unicode value for a custom character appears in the right -most column. +* Less browser support, although modern browsers should handle most features +* Many different ways to add to a page, but only those that allow access to the SVG markup will permit styling via CSS +* Styling multi-coloured SVGs can be complex and may not always be supported +* Depending on how they are added to the page, may make reading page markup harder +* Depending on how they are added to the page, may increase transfer size due to lack of caching. From 2f2a8a41db007fbc845543391ed375bd2228470b Mon Sep 17 00:00:00 2001 From: Justin Obara Date: Mon, 12 Aug 2019 12:18:06 -0400 Subject: [PATCH 2/6] FLUID-6391: Linting --- .../HowToCreateAndUseFontIcons.md | 17 +++++++++-------- src/static/js/mini-search.js | 1 - tests/testem-fixtures/js/search-tests.js | 2 +- 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/src/documents/tutorial-iconFonts/HowToCreateAndUseFontIcons.md b/src/documents/tutorial-iconFonts/HowToCreateAndUseFontIcons.md index c0085968..9d593e84 100644 --- a/src/documents/tutorial-iconFonts/HowToCreateAndUseFontIcons.md +++ b/src/documents/tutorial-iconFonts/HowToCreateAndUseFontIcons.md @@ -56,7 +56,7 @@ Use illustration software to create an SVG version of the icon you want to use a Tips: * The dimensions of the graphic doesn't matter since everything will be scaled by the browser's font-rendering. However, -all of the icons should be sized and drawn in a consistent fashion. + all of the icons should be sized and drawn in a consistent fashion. * Work in binary (i.e. black and white) and do not apply effects such as drop-shadows or embossing. * Sometimes the font conversion of the SVG may not work properly, so be prepared to edit your SVG file again. * Overlapping regions of shapes may cause a subtraction when converted in IcoMoon (i.e. it will render as transparent) - @@ -64,8 +64,8 @@ all of the icons should be sized and drawn in a consistent fashion. Download Example SVG file: [pencil-icon-01.svg](../images/pencil-icon-01.svg) -Consult the [Infusion Icons Visual Style Guide] -(https://wiki.fluidproject.org/display/fluid/Infusion+Icons+Visual+Style+Guide) for how icons are created for Infusion. +Consult the [Infusion Icons Visual Style Guide](https://wiki.fluidproject.org/display/fluid/Infusion+Icons+Visual+Style+Guide) +for how icons are created for Infusion. ## Step 2. Generating the Font @@ -79,6 +79,7 @@ dependencies, are installed, fonts can be generated with a config file. instructions) #### Example + ```json { "src": [ @@ -180,8 +181,8 @@ HTML and CSS files are unavailable, you can retrieve the Unicode using one of th "[Dealing with the TTF Unicode](HowToCreateAndUseFontIcons.md#dealing-with-the-unicode)" below._ **However, there is a problem** - the new icon font will replace the existing font of its container and all child -*elements and therefore removing any font styling you may have wanted to preserve. The next section will outline common -*issues and how to fix them and some best practices. +elements and therefore removing any font styling you may have wanted to preserve. The next section will outline common +issues and how to fix them and some best practices. ## Common Issues @@ -256,7 +257,7 @@ body { It's common for images to be used in functional ways such as acting as a button within an anchor tag. For example: ```html - +Download our latest stuff! ``` The problem here is if we replace the image in the anchor with an icon font, any text descriptions (the alt text) @@ -344,14 +345,14 @@ markup. However, if the information about the Unicode values is lost, here are t ## What about SVG Icons SVG icons can be used as an alternative to icons supplied through an icon font. Below is a quick summary of the pros and -cons of SVG Icons. For more information on SVG Icons see the +cons of SVG Icons. For more information on SVG Icons see the [Research SVG Icons](https://wiki.fluidproject.org/display/fluid/Research+SVG+Icons) wiki page. ### Benefits of SVG Icons * Can use multiple colours * Can support complex icons including multiple colours - * although it increases the complexity to style with CSS + * although it increases the complexity to style with CSS * Don't have to compile into a font ### Drawbacks of SVG Icons diff --git a/src/static/js/mini-search.js b/src/static/js/mini-search.js index 882a6f80..611fa23c 100644 --- a/src/static/js/mini-search.js +++ b/src/static/js/mini-search.js @@ -1,4 +1,3 @@ -/* globals Fuse */ /* A "mini search" that intercepts the normal form submission and ensures that search queries are properly encoded so diff --git a/tests/testem-fixtures/js/search-tests.js b/tests/testem-fixtures/js/search-tests.js index bfe7bb5d..f9eb5f06 100644 --- a/tests/testem-fixtures/js/search-tests.js +++ b/tests/testem-fixtures/js/search-tests.js @@ -1,7 +1,7 @@ /* globals jqUnit */ (function (fluid, jqUnit, $) { "use strict"; - fluid.registerNamespace("fluid.test.docs.search") + fluid.registerNamespace("fluid.test.docs.search"); fluid.defaults("fluid.tests.search.searchCreationElement", { gradeNames: ["fluid.test.sequenceElement"], From 3c630bd478c16d8fca8b06b4884aca9d865d4e29 Mon Sep 17 00:00:00 2001 From: Justin Obara Date: Tue, 15 Sep 2020 09:36:16 -0400 Subject: [PATCH 3/6] FLUID-6391: Fix erroneous comment. --- .../tutorial-iconFonts/HowToCreateAndUseFontIcons.md | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/documents/tutorial-iconFonts/HowToCreateAndUseFontIcons.md b/src/documents/tutorial-iconFonts/HowToCreateAndUseFontIcons.md index 9d593e84..5c404e9f 100644 --- a/src/documents/tutorial-iconFonts/HowToCreateAndUseFontIcons.md +++ b/src/documents/tutorial-iconFonts/HowToCreateAndUseFontIcons.md @@ -260,11 +260,10 @@ It's common for images to be used in functional ways such as acting as a button Download our latest stuff! ``` -The problem here is if we replace the image in the anchor with an icon font, any text descriptions (the alt text) - +However if we replace the image in the anchor with an icon font, any text descriptions (the alt text of the original image) will be removed as well; potentially causing usability and accessibility issues. ```html -/* The alt text is now gone, causing a usability and accessibility problem. */ +/* The alt text is now gone, causing a usability and accessibility issue. */ ``` From 5d7d3143f166c099b94b9cd21f72d8d2872e4ab9 Mon Sep 17 00:00:00 2001 From: Justin Obara Date: Tue, 15 Sep 2020 10:31:53 -0400 Subject: [PATCH 4/6] FLUID-6391: Remove IcoMoon documentation. We are now using Infusion-Icons and no longer recomment IcoMoon. --- src/documents/images/Unicode-charmap.png | Bin 39221 -> 0 bytes .../HowToCreateAndUseFontIcons.md | 63 ++---------------- 2 files changed, 5 insertions(+), 58 deletions(-) delete mode 100644 src/documents/images/Unicode-charmap.png diff --git a/src/documents/images/Unicode-charmap.png b/src/documents/images/Unicode-charmap.png deleted file mode 100644 index 69da3751d70e98f9f0fb1e3fa8b84beaf486d8e1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 39221 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 T4HFO$(C+FO-u`maA?AMooJxpQ diff --git a/src/documents/tutorial-iconFonts/HowToCreateAndUseFontIcons.md b/src/documents/tutorial-iconFonts/HowToCreateAndUseFontIcons.md index 5c404e9f..9632b92a 100644 --- a/src/documents/tutorial-iconFonts/HowToCreateAndUseFontIcons.md +++ b/src/documents/tutorial-iconFonts/HowToCreateAndUseFontIcons.md @@ -29,7 +29,7 @@ However, there are some shortcomings to keep in mind: ## Procedure Summary * Create the icon and save it as an SVG graphic. -* Use [IcoMoon](http://icomoon.io/) to generate a font from an SVG graphic. +* Generate a font from an SVG graphic(s). * Add the font to your markup. Example: ```css @@ -59,8 +59,8 @@ Tips: all of the icons should be sized and drawn in a consistent fashion. * Work in binary (i.e. black and white) and do not apply effects such as drop-shadows or embossing. * Sometimes the font conversion of the SVG may not work properly, so be prepared to edit your SVG file again. -* Overlapping regions of shapes may cause a subtraction when converted in IcoMoon (i.e. it will render as transparent) - - in this case you may need to build a single shape from these conflicting shapes, or ensure none of your shapes overlap. +* Overlapping regions of shapes may cause a subtraction when converted (i.e. it will render as transparent) - in this + case you may need to build a single shape from these conflicting shapes, or ensure none of your shapes overlap. Download Example SVG file: [pencil-icon-01.svg](../images/pencil-icon-01.svg) @@ -69,16 +69,12 @@ for how icons are created for Infusion. ## Step 2. Generating the Font -### Using Infusion-Icons to Generate the Font - -This is the preferred method for use with Infusion related projects because it makes modifying the font and tracking PUA -codes much simpler. Once the [Infusion-Icons npm module](https://www.npmjs.com/package/infusion-icons), and all its -dependencies, are installed, fonts can be generated with a config file. +In the past we recommended [IcoMoon](http://icomoon.io/app) to generate the icon font. We are now using [Infusion-Icons](https://www.npmjs.com/package/infusion-icons) because it provides an easier means of modifying the font and tracking PUA codes. With the Infusion-Icons fonts can be generated from a config file. (See: [Infusion-Icons README](https://github.com/fluid-project/infusion-icons/blob/master/README.md) for more detailed instructions) -#### Example +### Example ```json { @@ -99,23 +95,6 @@ instructions) grunt build --config="path/to/config.json" ``` -### Using IcoMoon to Generate the Font - -Steps: - -1. Go to [IcoMoon](http://icomoon.io/app) (you can also run IcoMoon in "offline" mode in Chrome browser by installing - the [IcoMoon Chrome app](http://goo.gl/we6ra)) -2. Import your SVG icon - select "Import Icons" and choose your SVG file. -3. Select your icon from the list (should appear under "Your Custom Icons" section, and select the "Font ->" button at - the bottom of the screen. -4. Save the ZIP file to a known location. - * Note: selecting the "Preferences" button will give you options to name your CSS classes and files. It i - recommended you use identifiers -5. Extract the contents of the ZIP file. - * The files we are most interested in are the `./fonts/*.eot`, `./fonts/*.woff`, and the `./index.html` files. -6. To verify that the font looks proper, open the `./index.html` file in a web browser. If the icon doesn't look right, - you may need to edit the SVG file and repeat the font generation process. - ## Step 3. Working with CSS and HTML Once you are satisfied with the appearance of your font, it is time to add it to your HTML and CSS markup. @@ -174,16 +153,6 @@ This is all that is needed to add the new icon to your markup. You will notice t more information on this, please see [http://www.fontspring.com/blog/the-new-bulletproof-font-face-syntax](http://www.fontspring.com/blog/the-new-bulletproof-font-face-syntax). -## Unicode for font - -_The Unicode (or "PUA code") for the custom font, generated by IcoMoon, can be found in the HTML and CSS file. If the -HTML and CSS files are unavailable, you can retrieve the Unicode using one of the methods listed under the section -"[Dealing with the TTF Unicode](HowToCreateAndUseFontIcons.md#dealing-with-the-unicode)" below._ - -**However, there is a problem** - the new icon font will replace the existing font of its container and all child -elements and therefore removing any font styling you may have wanted to preserve. The next section will outline common -issues and how to fix them and some best practices. - ## Common Issues ### Preserving Existing Fonts @@ -319,28 +288,6 @@ The IE8 fix needs to be the first URL in the list of sources otherwise the font Reference: [http://www.fontspring.com/blog/the-new-bulletproof-font-face-syntax](http://www.fontspring.com/blog/the-new-bulletproof-font-face-syntax) -### Dealing with the Unicode - -Infusion-Icons generates the icon font based off of a config where the Unicode values can be specified; -IcoMoon conveniently generates an HTML and CSS file for custom fonts which contain the Unicode to be used in your -markup. However, if the information about the Unicode values is lost, here are two ways to obtain them. - -#### Obtaining Unicode on the Web - -1. Open a tool like [FontDrop!](https://fontdrop.info) -2. Upload the font file -3. Inspect the icon information to find the Unicode value. - * In FontDrop! the Unicode value will appear by hover over or clicking on the glyphs. - -#### Obtaining Unicode in Windows - -1. Install the custom TTF font to the OS (usually a right-click then select "Install" from the context menu). -2. Run Character Map (done by searching the Start menu, or by typing Win+R then "charmap"). -3. Select the custom font from the Font drop-down menu. The glyphs in the custom font should now appear in the window. -4. Select a character in the window. The Unicode will appear in the bottom-left corner in the status bar. - -![Unicode character map](../images/Unicode-charmap.png) - ## What about SVG Icons SVG icons can be used as an alternative to icons supplied through an icon font. Below is a quick summary of the pros and From 8c8c35659ac11d73c5104a94a4a5e12837cf21ea Mon Sep 17 00:00:00 2001 From: Justin Obara Date: Tue, 15 Sep 2020 11:08:50 -0400 Subject: [PATCH 5/6] FLUID-6391: Refine SVG Icon information. --- .../HowToCreateAndUseFontIcons.md | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/src/documents/tutorial-iconFonts/HowToCreateAndUseFontIcons.md b/src/documents/tutorial-iconFonts/HowToCreateAndUseFontIcons.md index 9632b92a..f0949dfe 100644 --- a/src/documents/tutorial-iconFonts/HowToCreateAndUseFontIcons.md +++ b/src/documents/tutorial-iconFonts/HowToCreateAndUseFontIcons.md @@ -298,13 +298,19 @@ cons of SVG Icons. For more information on SVG Icons see the * Can use multiple colours * Can support complex icons including multiple colours - * although it increases the complexity to style with CSS + * See: [Styling SVG Content with CSS](https://tympanus.net/codrops/2015/07/16/styling-svg-use-content-css/) for + a detailed explanation on styling SVGs with CSS. * Don't have to compile into a font ### Drawbacks of SVG Icons -* Less browser support, although modern browsers should handle most features +* Less browser support, although modern browsers should handle most features. + * See: [caniuse](https://caniuse.com/?search=svg) for more details on supported features. * Many different ways to add to a page, but only those that allow access to the SVG markup will permit styling via CSS -* Styling multi-coloured SVGs can be complex and may not always be supported -* Depending on how they are added to the page, may make reading page markup harder -* Depending on how they are added to the page, may increase transfer size due to lack of caching. + * Embedding SVG markup directly into the page markup + * may make reading page markup harder + * Depending on how SVGs are added to the page, may increase transfer size due to lack of caching. + * `` to import SVG into page markup + * Allows for styling and caching by referencing external SVGs + * Not supported in older browsers such as IE 11 + From 9e2530fd237da819dbf903e7d8328ecb91ce8f1d Mon Sep 17 00:00:00 2001 From: Justin Obara Date: Tue, 11 May 2021 14:13:44 -0400 Subject: [PATCH 6/6] FLUID-6391: Cleanup --- .../HowToCreateAndUseFontIcons.md | 37 +++++++++---------- 1 file changed, 17 insertions(+), 20 deletions(-) diff --git a/src/documents/tutorial-iconFonts/HowToCreateAndUseFontIcons.md b/src/documents/tutorial-iconFonts/HowToCreateAndUseFontIcons.md index c0d69d50..0d43ab78 100644 --- a/src/documents/tutorial-iconFonts/HowToCreateAndUseFontIcons.md +++ b/src/documents/tutorial-iconFonts/HowToCreateAndUseFontIcons.md @@ -69,7 +69,9 @@ for how icons are created for Infusion. ## Step 2. Generating the Font -In the past we recommended [IcoMoon](http://icomoon.io/app) to generate the icon font. We are now using [Infusion-Icons](https://www.npmjs.com/package/infusion-icons) because it provides an easier means of modifying the font and tracking PUA codes. With the Infusion-Icons fonts can be generated from a config file. +In the past we recommended [IcoMoon](http://icomoon.io/app) to generate the icon font. We are now using +[Infusion-Icons](https://www.npmjs.com/package/infusion-icons) because it provides an easier means of modifying the font +and tracking PUA codes. With the Infusion-Icons fonts can be generated from a config file. (See: [Infusion-Icons README](https://github.com/fluid-project/infusion-icons/blob/master/README.md) for more detailed instructions) @@ -119,7 +121,7 @@ Next, add the new font to the CSS markup. ```css @font-face { - font-family: 'CustomIcons'; /* Specify the new font */ + font-family: 'CustomIcons'; /* Specify the new font */ src: url('../fonts/CustomIcons.eot?#iefix') format('embedded-opentype'), /* IE8 fix. */ url('../fonts/CustomIcons.woff'); @@ -127,7 +129,7 @@ Next, add the new font to the CSS markup. #contact_form { background: url("../images/envelope.png"); /* existing image that will be replaced by icon */ - font-family: 'CustomIcons; /* the new font icon */ + font-family: 'CustomIcons'; /* the new font icon */ } ``` @@ -135,7 +137,7 @@ Finally, add the new icon into the BEFORE pseudo class and delete any references ```css @font-face { - font-family: 'CustomIcons'; /* Specify the new font */ + font-family: 'CustomIcons'; /* Specify the new font */ src: url('../fonts/CustomIcons.eot?#iefix') format('embedded-opentype'), /* IE8 fix. */ url('../fonts/CustomIcons.woff'); @@ -143,11 +145,11 @@ Finally, add the new icon into the BEFORE pseudo class and delete any references #contact_form { /* old icon image has been removed. */ - font-family: 'CustomIcons'; /* the new font icon */ + font-family: 'CustomIcons'; /* the new font icon */ } #contact_form::before { - content: "\e000"; /* the custom Unicode (aka. PUA) for the icon. */ + content: "\e000"; /* the custom Unicode (aka. PUA) for the icon. */ } ``` @@ -176,9 +178,7 @@ contents within the ``, which means "Contact us" will no longer be Comic Sans ```css @font-face { font-family: 'CustomIcons'; - src: - url('../fonts/CustomIcons.ttf'), - url('../fonts/CustomIcons.eot'); + src: url('../fonts/CustomIcons.woff'); } body { @@ -208,8 +208,7 @@ contained within. The CSS file is then updated to reference this new markup stru @font-face { font-family: 'CustomIcons'; src: - url('../fonts/CustomIcons.ttf'), - url('../fonts/CustomIcons.eot'); + url('../fonts/CustomIcons.woff'); } body { @@ -233,7 +232,8 @@ It's common for images to be used in functional ways such as acting as a button Download our latest stuff! ``` -However if we replace the image in the anchor with an icon font, any text descriptions (the alt text of the original image) will be removed as well; potentially causing usability and accessibility issues. +However if we replace the image in the anchor with an icon font, any text descriptions (the alt text of the original +image) will be removed as well; potentially causing usability and accessibility issues. ```html /* The alt text is now gone, causing a usability and accessibility issue. */ @@ -244,8 +244,7 @@ However if we replace the image in the anchor with an icon font, any text descri @font-face { font-family: 'CustomIcons'; src: - url('../fonts/CustomIcons.ttf'), - url('../fonts/CustomIcons.eot'); + url('../fonts/CustomIcons.woff'); } a { @@ -266,8 +265,8 @@ To bring back some semantics and to help improve accessibility, we use "aria-lab ### Cross-Browser Oddities -Icon fonts can appear different across browsers and across operating systems. For example, the following icon is -rendered differently in Firefox in Mac OS X and in Windows despite being the same icon and the same browser. +Icon fonts can appear different across browsers and operating systems. For example, the following icon is rendered +differently in Firefox in Mac OS X and in Windows despite being the same icon and the same browser. ![a partially displayed font icon on firefox, Mac system](/images//Icon-FF-OSX.png) ![a partially displayed font icon on firefox, Windows system](/images//Icon-FF-windows.png) @@ -283,11 +282,10 @@ format('embedded-opentype')` to your CSS. For example: ```css @font-face { - font-family: 'CustomIcons'; /* Specify the new font */ + font-family: 'CustomIcons'; /* Specify the new font */ src: url('../fonts/CustomIcons.eot?#iefix') format('embedded-opentype'), - url(' CustomIcons.ttf'), - url(' CustomIcons.eot'); + url('CustomIcons.woff'); } ``` @@ -320,4 +318,3 @@ cons of SVG Icons. For more information on SVG Icons see the * `` to import SVG into page markup * Allows for styling and caching by referencing external SVGs * Not supported in older browsers such as IE 11 -