File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -110,16 +110,14 @@ block content
110110 opacity : 0.8 ;
111111 }
112112
113- .kibanaWelcomeView (
114- data-id ="kibanaWelcomeView"
115- )
113+ .kibanaWelcomeView
116114 .kibanaLoader
117115 .kibanaLoader__logo
118116 .kibanaWelcomeLogo
119117 .kibanaLoader__content
120118 | Loading Kibana
121119 .kibanaLoadingMessage (
122- data-id = "kibanaLoadingMessage"
120+ data-remove-message-when-embedded
123121 )
124122 | Give me a moment here. I’ m loading a whole bunch of code. Don’ t worry, all this
125123 | good stuff will be cached up for next time!
@@ -129,9 +127,8 @@ block content
129127
130128 var hideLoadingMessage = / #. * [?&] embed(&| $ | =true)/ .test (window .location .href );
131129 if (hideLoadingMessage) {
132- var loadingContainer = document .querySelector (' [data-id="kibanaWelcomeView"]' );
133- var loadingMessage = document .querySelector (' [data-id="kibanaLoadingMessage"]' );
134- loadingContainer .removeChild (loadingMessage);
130+ var loadingMessage = document .querySelector (' [data-remove-message-when-embedded]' );
131+ loadingMessage .parentNode .removeChild (loadingMessage);
135132 }
136133
137134 var buildNum = #{kibanaPayload .buildNum };
Original file line number Diff line number Diff line change 22# CSS Style Guide
33
44- [ CSS Style Guide] ( #css-style-guide )
5+ - [ Selecting elements] ( #selecting-elements )
56 - [ Using the preprocessor] ( #using-the-preprocessor )
67 - [ Don't build concatenated selector names] ( #dont-build-concatenated-selector-names )
78 - [ Avoid nested selectors] ( #avoid-nested-selectors )
1516 - [ How to apply DRY] ( #how-to-apply-dry )
1617 - [ Compelling reasons for using mixins] ( #compelling-reasons-for-using-mixins )
1718
19+ ## Selecting elements
20+
21+ References to CSS selectors within JavaScript are difficult to discover, making it easy to accidentally
22+ break the UI when refactoring markup or CSS.
23+
24+ Instead, add a ` data ` attribute with a unique and descriptive name and select the element using that.
25+
26+ ``` html
27+ <div data-welcome-message >Hello, world</div >
28+ ```
29+
30+ ``` javascript
31+ const welcomeMessage = document .querySelector (' [data-welcome-message]' );
32+ ```
33+
34+ This uncouples our CSS from our JavaScript, making it easy to change each independently of the other.
35+
1836## Using the preprocessor
1937
2038### Don't build concatenated selector names
You can’t perform that action at this time.
0 commit comments