You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: src/v2/guide/class-and-style.md
+19-19
Original file line number
Diff line number
Diff line change
@@ -4,21 +4,21 @@ type: guide
4
4
order: 6
5
5
---
6
6
7
-
Una necesidad común para la vinculación de datos es manipular la lista de clases de un elemento, así como sus estilos en línea. Como ambos son atributos, podemos usar `v-bind` para controlarlos: sólo debemos calcular un string final con nuestras expresiones. Sin embargo, trabajar con concatenaciones de strings es molesto y propenso a errores. Por esta razón, Vue ofrece mejoras especiales cuando `v-bind`es usado junto con `class`and`style`. En adición a strings, las expresiones pueden también ser evaluadas a objetos o arrays.
7
+
Una necesidad común para la vinculación de datos es manipular la lista de clases de un elemento y sus estilos en línea. Como ambos son atributos, podemos usar `v-bind` para manejarlos: sólo necesitamos calcular una cadena de texto final con nuestras expresiones. Sin embargo, trabajar con concatenaciones de cadenas de texto es molesto y propenso a errores. Por esta razón, Vue proporciona mejoras especiales cuando se utiliza `v-bind` con `class`y`style`. Además de las cadenas de texto, las expresiones también pueden evaluar objetos o arrays.
8
8
9
9
## Vinculación de datos en clases HTML
10
10
11
11
### Sintaxis de objeto
12
12
13
-
Podemos pasar un objeto a `v-bind:class` para intercambiar dinámicamente las clases:
13
+
Podemos pasar un objeto a `v-bind:class` para cambiar dinámicamente de clase:
14
14
15
15
```html
16
16
<divv-bind:class="{ active: isActive }"></div>
17
17
```
18
18
19
-
La sintaxis anterior ilustra que la presencia de la clase `active`será determinada por el [thrutiness](https://developer.mozilla.org/en-US/docs/Glossary/Truthy) de la propiedad `isActive`.
19
+
La sintaxis anterior significa que la presencia de la clase `active`estará determinada por el [thrutiness](https://developer.mozilla.org/en-US/docs/Glossary/Truthy) de la propiedad `isActive`.
20
20
21
-
Puede intercambiar múltiples clases si tiene más campos en el objeto. Además, la directiva `v-bind:class` puede coexistir con el atributo común `class`. De modo que en la siguiente plantilla:
21
+
Puede alternar múltiples clases al tener más campos en el objeto. Además, la directiva `v-bind:class`también puede coexistir con el atributo `class` regular. Así que, dada la siguiente plantilla:
22
22
23
23
```html
24
24
<divclass="static"
@@ -35,15 +35,15 @@ data: {
35
35
}
36
36
```
37
37
38
-
Se va a renderizar:
38
+
Se renderizará:
39
39
40
40
```html
41
41
<divclass="static active"></div>
42
42
```
43
43
44
-
Siempre que `isActive` o `hasError`cambie, la lista de clases será actualizada acordemente. Por ejemplo, si `hasError`toma el valor`true`, la lista de clases cambiará a `"static active text-danger".`
44
+
Cuando `isActive` o `hasError`cambien, la lista de clases se actualizará en consecuencia. Por ejemplo, si `hasError`se convierte en`true`, la lista de clases se convertirá en `"static active text-danger"`.
45
45
46
-
El objeto vinculado no debe necesariamente estar en línea:
46
+
El objeto vinculado no tiene que estar en línea:
47
47
48
48
```html
49
49
<divv-bind:class="classObject"></div>
@@ -57,7 +57,7 @@ data: {
57
57
}
58
58
```
59
59
60
-
Esto mostrará el mismo resultado. También podemos vincular a una [propiedad calculada](computed.html) que retorne un objeto. Esto es un patrón muy común y poderoso:
60
+
Esto dará el mismo resultado. También podemos vincular a una [propiedad calculada](computed.html) que devuelve un objeto. Este es un patrón común y poderoso:
61
61
62
62
```html
63
63
<divv-bind:class="classObject"></div>
@@ -97,25 +97,25 @@ Lo cual renderizará:
97
97
<divclass="active text-danger"></div>
98
98
```
99
99
100
-
Si quisiera también intercambiar condicionalmente una clase en el listado de clases, lo puede hacer con una expresión ternaria:
100
+
Si también desea alternar condicionalmente una clase de la lista, puede hacerlo con una expresión ternaria:
Esto siempre aplicará `errorClass`, pero solo aplicará `activeClass` cuando `isActive`tenga valor `true`.
106
+
Esto siempre aplicará `errorClass`, pero sólo se aplicará `activeClass` cuando `isActive`sea verdadero.
107
107
108
-
Sin embargo, esto puede ser un poco extenso si tiene múltiples clases condicionales. Por esto también es posible usar la sintaxis de objeto dentro de la sintaxis de array:
108
+
Sin embargo, esto puede ser un poco extenso si tiene varias clases condicionales. Es por eso que también es posible usar la sintaxis de objeto dentro de la sintaxis de array:
> Esta sección asume conocimientos previos de [Componentes Vue](components.html). Sea libre de saltar ésta sección y regresar más adelante.
116
+
> Esta sección asume conocimientos previos de [Componentes Vue](components.html). Siéntase libre de omitirla y regresar más tarde.
117
117
118
-
Cuando usa el atributo `class` en un componente personalizado, los cambios serán añadidos al elemento raíz del componente. Las clases existentes de dicho elemento no serán sobreescritas.
118
+
Cuando utilice el atributo `class` en un componente personalizado, esas clases se añadirán al elemento raíz del componente. Las clases existentes en este elemento no serán sobrescritas.
119
119
120
120
Por ejemplo, si declara este componente:
121
121
@@ -137,7 +137,7 @@ El HTML renderizado será:
137
137
<pclass="foo bar baz boo">Hi</p>
138
138
```
139
139
140
-
Lo mismo aplica en el uso de vinculación de datos en clases:
140
+
Lo mismo ocurre en el uso de vinculación de datos en clases:
@@ -153,7 +153,7 @@ Cuando `isActive` es `true`, el HTML renderizado será:
153
153
154
154
### Sintaxis de objeto
155
155
156
-
La sintaxis de objetos para `v-bind:style` es bastante sencilla - casi parece CSS, excepto que es un objeto javascript. Puede usar camelCase o kebab-case (use comillas con kebab-case) para los nombres de propiedades:
156
+
La sintaxis del objeto para `v-bind:style` es bastante sencilla - casi parece CSS, excepto que es un objeto JavaScript. Puede usar camelCase o kebab-case (use comillas con kebab-case) para los nombres de las propiedades CSS:
A menudo es una buena idea vincular a un objeto de estilos directamente para que la plantilla sea más limpia:
168
+
A menudo es una buena idea vincular a un objeto de estilos directamente para que la plantilla esté más limpia:
169
169
170
170
```html
171
171
<divv-bind:style="styleObject"></div>
@@ -179,7 +179,7 @@ data: {
179
179
}
180
180
```
181
181
182
-
De nuevo, la sintaxis de objeto es comúnmente usada junto con propiedades calculadas que retornan objetos.
182
+
Una vez más, la sintaxis de objeto se utiliza a menudo junto con las propiedades calculadas que devuelven los objetos.
183
183
184
184
### Sintaxis de Array
185
185
@@ -191,7 +191,7 @@ La sintaxis de array para `v-bind:style` le permite aplicar múltiples objetos d
191
191
192
192
### Prefijos automáticos
193
193
194
-
Cuando use una propiedad CSS que requiera [prefijos de navegador](https://developer.mozilla.org/en-US/docs/Glossary/Vendor_Prefix) en `v-bind:style`, por ejemplo `transform`, Vue automáticamente detectará y añadira los prefijos apropiados a los estilos aplicados.
194
+
Cuando use una propiedad CSS que requiera [prefijos de navegador](https://developer.mozilla.org/en-US/docs/Glossary/Vendor_Prefix) en `v-bind:style`, por ejemplo `transform`, Vue detectará y añadirá automáticamente los prefijos apropiados a los estilos aplicados.
195
195
196
196
### Múltiples valores
197
197
@@ -203,4 +203,4 @@ A partir de 2.3.0+ puede asignar un array con múltiples valores (prefijados) a
Esto sólo renderizará el último valor en el array que sea soportado por el navegador. En este ejemplo, será traducido `display: flex` para navegadores que soporten la versión no prefijada de flexbox.
206
+
Esto sólo renderizará el último valor en el array que sea soportado por el navegador. En este ejemplo, mostrará `display: flex` para los navegadores que soportan la versión sin prefijos de flexbox.
0 commit comments