Skip to content

Commit 9bfce44

Browse files
committed
more
1 parent 7da1109 commit 9bfce44

File tree

3 files changed

+64
-5
lines changed

3 files changed

+64
-5
lines changed

documentation/docs/03-template-syntax/15-class-and-style.md

Lines changed: 0 additions & 5 deletions
This file was deleted.
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
---
2+
title: class:
3+
---
4+
5+
The `class:` directive is a convenient way to conditionally set classes on elements, as an alternative to using conditional expressions inside `class` attributes:
6+
7+
```svelte
8+
<!-- These are equivalent -->
9+
<div class={isCool ? 'cool' : ''}>...</div>
10+
<div class:cool={isCool}>...</div>
11+
```
12+
13+
As with other directives, we can use a shorthand when the name of the class coincides with the value:
14+
15+
```svelte
16+
<div class:cool>...</div>
17+
```
18+
19+
Multiple `class:` directives can be added to a single element:
20+
21+
```svelte
22+
<div class:cool class:lame={!cool} class:potato>...</div>
23+
```
Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
---
2+
title: style:
3+
---
4+
5+
The `style:` directive provides a shorthand for setting multiple styles on an element.
6+
7+
```svelte
8+
<!-- These are equivalent -->
9+
<div style:color="red">...</div>
10+
<div style="color: red;">...</div>
11+
```
12+
13+
The value can contain arbitrary expressions:
14+
15+
```svelte
16+
<div style:color={myColor}>...</div>
17+
```
18+
19+
The shorthand form is allowed:
20+
21+
```svelte
22+
<div style:color>...</div>
23+
```
24+
25+
Multiple styles can be set on a single element:
26+
27+
```svelte
28+
<div style:color style:width="12rem" style:background-color={darkMode ? 'black' : 'white'}>...</div>
29+
```
30+
31+
To mark a style as important, use the `|important` modifier:
32+
33+
```svelte
34+
<div style:color|important="red">...</div>
35+
```
36+
37+
When `style:` directives are combined with `style` attributes, the directives will take precedence:
38+
39+
```svelte
40+
<div style="color: blue;" style:color="red">This will be red</div>
41+
```

0 commit comments

Comments
 (0)