Skip to content

Commit c62a954

Browse files
committed
Review 2-ui\1-document\09-size-and-scroll
1 parent a317465 commit c62a954

File tree

3 files changed

+8
-8
lines changed

3 files changed

+8
-8
lines changed

2-ui/1-document/09-size-and-scroll/1-get-scroll-height-bottom/task.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ importance: 5
44

55
# Qual è la misura dello scorrimento verso il basso?
66

7-
La proprietà `elem.scrollTop` è la misura della parte superiore di un elemento fuori dall'area visibile di scorrimento. Come ottenere la misura della parte inferiore (chiamiamola `scrollBottom`)?
7+
La proprietà `elem.scrollTop` è la misura della parte superiore di un elemento fuori dall'area di scorrimento. Come ottenere la misura della parte inferiore (chiamiamola `scrollBottom`)?
88

99
Scrivete il codice che funzioni per un elemento arbitrario `elem`.
1010

2-ui/1-document/09-size-and-scroll/4-put-ball-in-center/solution.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ Le coordinate sono a partire dall'angolo interno superiore sinistro del campo:
44

55
![](field.svg)
66

7-
Le dimensioni interne del campo si calcolano con `clientWidth/clientHeight`. I valori delle coordinate del centro del campo quindi si ottengono con `(clientWidth/2, clientHeight/2)`.
7+
Le dimensioni interne del campo si calcolano con `clientWidth/clientHeight`. I valori delle coordinate del centro del campo, quindi, si ottengono con `(clientWidth/2, clientHeight/2)`.
88

99
...Ma se impostiamo tali valori per `ball.style.left/top`, allora si troverebbe al centro non la palla ma il suo bordo superiore sinistro
1010

2-ui/1-document/09-size-and-scroll/article.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
# Dimensioni dell'elemento e barra di scorrimento
22

3-
Ci sono molte proprietà JavaScript che ci consentono di leggere informazioni circa la larghezza, l'altezza di un elemento e le altre caratteristiche geometriche.
3+
Ci sono molte proprietà JavaScript che ci consentono di leggere informazioni circa la larghezza, l'altezza di un elemento e le altre proprietà geometriche.
44

55
Spesso ne abbiamo bisogno quando spostiamo o posizioniamo gli elementi in JavaScript.
66

77
## Esempio dimostrativo
88

9-
Useremo l'elemento indicato a seguire quale esempio di tali proprietà:
9+
Useremo l'elemento indicato sotto quale esempio di tali proprietà:
1010

1111
```html no-beautify
1212
<div id="example">
@@ -32,7 +32,7 @@ L'elemento si presenta così:
3232
Potete [visualizzare il documento nella sandbox](sandbox:metric).
3333

3434
```smart header="Prestate attenzione alla barra di scorrimento"
35-
L'immagine sopra rappresenta il caso più complesso in cui l'elemento ha una barra di scorrimento. Alcuni browser (non tutti) ricavano lo spazio per la barra prendendolo dall'area del contenuto (indicata sopra come "content width").
35+
L'immagine sopra rappresenta il caso più complesso in cui l'elemento possiede una barra di scorrimento. Alcuni browser (non tutti) ricavano lo spazio per la barra prendendolo dall'area del contenuto (indicata sopra come "content width").
3636
3737
Senza la barra di scorrimento, pertanto, l'area del contenuto sarebbe `300px`, ma se la barra di scorrimento è larga `16px` (la larghezza è variabile in base al dispositivo ed al browser) allora rimane soltanto `300 - 16 = 284px`, ed è questa la misura che dovremmo tenere in considerazione. Ecco perché gli esempi di questo capitolo presumono che ci sia una barra di scorrimento. Senza questa, alcuni calcoli sono più semplici.
3838
```
@@ -166,7 +166,7 @@ In assenza di padding, dunque, possiamo usare `clientWidth/clientHeight` per ric
166166

167167
## scrollWidth/Height
168168

169-
Queste proprietà sono come `clientWidth/clientHeight`, ma includono anche le parti fuori dall'area visibile di scorrimento (non visibili):
169+
Queste proprietà sono come `clientWidth/clientHeight`, ma includono anche le parti (non visibili) fuori dall'area di scorrimento:
170170

171171
![](metric-scroll-width-height.svg)
172172

@@ -231,7 +231,7 @@ alert( getComputedStyle(elem).width ); // mostra la larghezza CSS per elem
231231
Perché invece dovremmo usare le proprietà geometriche? Ci sono due ragioni:
232232
233233
1. La prima, le proprietà CSS `width/height` dipendono da un'altra proprietà: `box-sizing` che definisce "cosa siano" la larghezza e l'altezza CSS. Una modifica in `box-sizing` per scopi riguardanti i CSS possono rompere un JavaScript che fa affidamento su questa.
234-
2. La seconda, le proprietà CSS `width/height` possono valere `auto`, per esempio per un elemento inline:
234+
2. La seconda, le proprietà CSS `width/height` possono valere `auto`, ad esempio per un elemento inline:
235235
236236
```html run
237237
<span id="elem">Hello!</span>
@@ -247,7 +247,7 @@ Perché invece dovremmo usare le proprietà geometriche? Ci sono due ragioni:
247247
248248
Ma c'è un'altra ragione: la barra di scorrimento. Talvolta un codice che funziona bene senza barra di scorrimento, con questa diventa difettoso, perché la barra di scorrimento su alcuni browser ricava il suo spazio dall'area del contenuto. La larghezza effettiva per il contenuto, dunque, è *minore* della larghezza CSS e `clientWidth/clientHeight` ne tengono conto.
249249
250-
...Ma con `getComputedStyle(elem).width` la situazione è differente. Alcuni browser (es. Chrome) restituiscono la larghezza interna effettiva, meno la barra di scorrimento, mentre altri (es. Firefox) la larghezza CSS (ignorando la barra di scorrimento). Queste diversità cross-browser costituiscono il motivo per il quale non usare `getComputedStyle` ma piuttosto fare affidamento sulle proprietà geometriche.
250+
...Ma con `getComputedStyle(elem).width` la situazione è differente. Alcuni browser (es. Chrome) restituiscono la larghezza interna effettiva, meno la barra di scorrimento, mentre altri (es. Firefox) la larghezza CSS (ignorando la barra di scorrimento). Queste inconsistenze cross-browser costituiscono il motivo per il quale non usare `getComputedStyle` ma piuttosto fare affidamento sulle proprietà geometriche.
251251
252252
```online
253253
Se il tuo browser ricava lo spazio per la barra di scorrimento dall'area del contenuto (la maggior parte dei browser per Windows lo fa), allora puoi testarlo qui di seguito.

0 commit comments

Comments
 (0)