+
+
+
+
+
diff --git a/src/cookbook/editable-svg-icons.md b/src/cookbook/editable-svg-icons.md
index f598e5e58f..804924acae 100644
--- a/src/cookbook/editable-svg-icons.md
+++ b/src/cookbook/editable-svg-icons.md
@@ -143,7 +143,7 @@ export default {
We're applying `refs` to the groups of paths we need to move, and as both sides of the scissors have to move in tandem, we'll create a function we can reuse where we'll pass in the `refs`. The use of GreenSock helps resolve animation support and `transform-origin` issues across browser.
-
Pretty easily accomplished! And easy to update on the fly.
diff --git a/src/examples/commits.md b/src/examples/commits.md
index b4e93d173a..566c489ca9 100644
--- a/src/examples/commits.md
+++ b/src/examples/commits.md
@@ -2,9 +2,4 @@
> This example fetches latest Vue.js commits data from GitHub’s API and displays them as a list. You can switch between the master and dev branches.
-
-
+
diff --git a/src/examples/grid-component.md b/src/examples/grid-component.md
index d546d6358a..fe725ebf4b 100644
--- a/src/examples/grid-component.md
+++ b/src/examples/grid-component.md
@@ -2,9 +2,4 @@
> This is an example of creating a reusable grid component and using it with external data.
-
-
+
diff --git a/src/examples/select2.md b/src/examples/select2.md
index 178908aafb..82c4f70287 100644
--- a/src/examples/select2.md
+++ b/src/examples/select2.md
@@ -2,9 +2,4 @@
> In this example we are integrating a 3rd party jQuery plugin (select2) by wrapping it inside a custom component.
-
-
+
diff --git a/src/examples/todomvc.md b/src/examples/todomvc.md
index 2e08eccd4e..8377ea5d39 100644
--- a/src/examples/todomvc.md
+++ b/src/examples/todomvc.md
@@ -8,9 +8,4 @@ Note that if your web browser is configured to block 3rd-party data/cookies, the
Additionally, due to limitations on CodePen, hashtag navigation will not work.
:::
-
-
+
diff --git a/src/examples/tree-view.md b/src/examples/tree-view.md
index d55a1d7069..1b437b771b 100644
--- a/src/examples/tree-view.md
+++ b/src/examples/tree-view.md
@@ -2,9 +2,4 @@
> Example of a tree view implementation showcasing recursive usage of components.
-
-
+
[Read documentation on skip link to main content](https://www.w3.org/WAI/WCAG21/Techniques/general/G1.html)
diff --git a/src/guide/a11y-semantics.md b/src/guide/a11y-semantics.md
index 711e2db99b..255e832401 100644
--- a/src/guide/a11y-semantics.md
+++ b/src/guide/a11y-semantics.md
@@ -21,12 +21,7 @@ Labels are typically placed on top or to the left of the form fields:
```
-
-
+
Notice how you can include `autocomplete='on'` on the form element and it will apply to all inputs in your form. You can also set different [values for autocomplete attribute](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete) for each input.
@@ -39,12 +34,7 @@ Provide labels to describe the purpose of all form control; linking `for` and `i
```
-
-
+
If you inspect this element in your chrome developer tools and open the Accessibility tab inside the Elements tab, you will see how the input gets its name from the label:
@@ -78,12 +68,7 @@ You can also give the input an accessible name with [`aria-label`](https://devel
/>
```
-
-
+
Feel free to inspect this element in Chrome DevTools to see how the accessible name has changed:
@@ -115,12 +100,7 @@ Using [`aria-labelledby`](https://developer.mozilla.org/en-US/docs/Web/Accessibi
```
-
-
+
You can see the description by inspecting Chrome DevTools:
@@ -169,12 +144,7 @@ Avoid using placeholders as they can confuse many users.
One of the issues with placeholders is that they don't meet the [color contrast criteria](https://www.w3.org/WAI/WCAG21/Understanding/contrast-minimum.html) by default; fixing the color contrast makes the placeholder look like pre-populated data in the input fields. Looking at the following example, you can see that the Last Name placeholder which meets the color contrast criteria looks like pre-populated data:
-
-
+
It is best to provide all the information the user needs to fill out forms outside any inputs.
@@ -208,12 +178,7 @@ Alternatively, you can attach the instructions to the input with [`aria-describe
```
-
-
+
Since components are reusable instances, they accept the same options as a root instance, such as `data`, `computed`, `watch`, `methods`, and lifecycle hooks. The only exceptions are a few root-specific options like `el`.
@@ -59,12 +54,7 @@ Components can be reused as many times as you want:
```
-
-
+
Notice that when clicking on the buttons, each one maintains its own, separate `count`. That's because each time you use a component, a new **instance** of it is created.
@@ -119,12 +109,7 @@ Once a prop is registered, you can pass data to it as a custom attribute, like t
```
-
-
+
In a typical app, however, you'll likely have an array of posts in `data`:
@@ -236,12 +221,7 @@ Then the child component can emit an event on itself by calling the built-in [**
Thanks to the `@enlarge-text="postFontSize += 0.1"` listener, the parent will receive the event and update `postFontSize` value.
-
-
+
We can list emitted events in the component's `emits` option.
@@ -377,12 +357,7 @@ Just like with HTML elements, it's often useful to be able to pass content to a
Which might render something like:
-
-
+
Fortunately, this task is made very simple by Vue's custom `` element:
@@ -405,12 +380,7 @@ That's all you need to know about slots for now, but once you've finished readin
Sometimes, it's useful to dynamically switch between components, like in a tabbed interface:
-
-
+
The above is made possible by Vue's `` element with the `is` special attribute:
diff --git a/src/guide/component-custom-events.md b/src/guide/component-custom-events.md
index f8e98ed49f..2bb1844959 100644
--- a/src/guide/component-custom-events.md
+++ b/src/guide/component-custom-events.md
@@ -134,12 +134,7 @@ app.component('user-name', {
})
```
-
-
+
## Handling `v-model` modifiers
diff --git a/src/guide/component-dynamic-async.md b/src/guide/component-dynamic-async.md
index 9eb95ef701..70f3f059bd 100644
--- a/src/guide/component-dynamic-async.md
+++ b/src/guide/component-dynamic-async.md
@@ -12,12 +12,7 @@ Earlier, we used the `is` attribute to switch between components in a tabbed int
When switching between these components though, you'll sometimes want to maintain their state or avoid re-rendering for performance reasons. For example, when expanding our tabbed interface a little:
-
-
+
You'll notice that if you select a post, switch to the _Archive_ tab, then switch back to _Posts_, it's no longer showing the post you selected. That's because each time you switch to a new tab, Vue creates a new instance of the `currentTabComponent`.
@@ -32,12 +27,7 @@ Recreating dynamic components is normally useful behavior, but in this case, we'
Check out the result below:
-
-
+
Now the _Posts_ tab maintains its state (the selected post) even when it's not rendered.
diff --git a/src/guide/computed.md b/src/guide/computed.md
index 15b4f56173..193fc1a139 100644
--- a/src/guide/computed.md
+++ b/src/guide/computed.md
@@ -69,12 +69,7 @@ Vue.createApp({
Result:
-
-
+
In this case, using the `watch` option allows us to perform an asynchronous operation (accessing an API) and sets a condition for performing this operation. None of that would be possible with a computed property.
diff --git a/src/guide/custom-directive.md b/src/guide/custom-directive.md
index 7ee4ae33eb..95ded50d69 100644
--- a/src/guide/custom-directive.md
+++ b/src/guide/custom-directive.md
@@ -4,12 +4,7 @@
In addition to the default set of directives shipped in core (like `v-model` or `v-show`), Vue also allows you to register your own custom directives. Note that in Vue, the primary form of code reuse and abstraction is components - however, there may be cases where you need some low-level DOM access on plain elements, and this is where custom directives would still be useful. An example would be focusing on an input element, like this one:
-
-
+
When the page loads, that element gains focus (note: `autofocus` doesn't work on mobile Safari). In fact, if you haven't clicked on anything else since visiting this page, the input above should be focused now. Also, you can click on the `Rerun` button and input will be focused.
@@ -127,12 +122,7 @@ app.mount('#dynamic-arguments-example')
Result:
-
-
+
Our custom directive is now flexible enough to support a few different use cases. To make it even more dynamic, we can also allow to modify a bound value. Let's create an additional property `pinPadding` and bind it to the ``
@@ -173,12 +163,7 @@ app.directive('pin', {
Result:
-
-
+
Sometimes we also need to access the original DOM event in an inline statement handler. You can pass it into a method using the special `$event` variable:
diff --git a/src/guide/forms.md b/src/guide/forms.md
index a4531a6178..dbfc49c0a4 100644
--- a/src/guide/forms.md
+++ b/src/guide/forms.md
@@ -26,12 +26,7 @@ For languages that require an [IME](https://en.wikipedia.org/wiki/Input_method)