2009-11-16 13 views
8

Nei CSS possiamo definire:Perché non esiste un attributo css dimensione?

margin-top: 10px; 
margin-right: 1px; 
margin-bottom: 1px; 
margin-left: 1px; 

o semplicemente breve:

margin: 10 1 1 1; 

anche possiamo definire:

border-left -right -bottom -top ... 

o corto:

border:1px solid black; 

per la definizione la dimensione s di un elemento che abbiamo bisogno:

width: 150px; 
height: 200px; 

perché non c'è qualcosa di simile:

dimension: 150px 200px; 

o fa qualcosa di simile esistono e Ho appena non saperlo?

(il motivo per cui chiedo: i misstype sempre 'DTH' -> 'DHT' e 'lotta' -> 'GTH' e vogliono dare la colpa a qualcuno)

+0

+1, domanda interessante .... – rahul

+8

+1 per il motivo. – BalusC

risposta

6

Dato che lavoriamo in uno spazio bidimensionale, ci saranno sempre solo 2 attributi, ovvero Larghezza e Altezza. Confronta questo con margine che ha quattro possibili parametri.

Si risparmia molto poco la digitazione utilizzando l'attributo di dimensione proposto, ma si corre il rischio di aggiungere errori. Ad esempio, potresti facilmente commettere l'errore di mischiare altezza e larghezza: in dimension: 150px 200px; l'altezza o la larghezza è 150px? Come interpreterebbe il browser dimension:200px significherebbe solo 200 larghezze, o significherebbe 200 x 200px? O qualcos'altro?

+0

beh, le persone si sono abituate alla sequenza dell'attributo del margine (in alto, a destra, in basso, a sinistra come un orologio) con le dimensioni che sarebbero state: altezza larghezza; Dimensione: 200px; sarebbe uguale alla dimensione: 200px 200px; e dimensione: 200px *; sarebbe uguale alla larghezza: 200px; ad ogni modo, ho capito cosa intendi e tu hai un punto. Dimensione – Chris

+0

: 200px *; potrebbe anche essere scritto come dimensione: 200px auto; – Chris

+0

Mi piace l'idea automatica, specialmente se è possibile utilizzare la dimensione: auto e il browser in qualche modo ha elaborato la dimensione effettiva dell'immagine. –

0

No, niente di tutto ciò che esiste, anche se sono d'accordo sarebbe conveniente Per quanto riguarda il motivo, dovresti chiedere ai ragazzi al W3C.

-2

Io non so perché si desidera definire le dimensioni dell'immagine in CSS (tranne forse per gli sfondi), quando:

  1. non è necessario definire la dimensione dell'immagine e del browser sarà solo fare OK
  2. puoi usare gli attributi in linea/styling, se vuoi dichiararlo

Inoltre, la tua domanda è soggettiva. Spec è spec, quindi mettiti in contatto con esso (oppure invia un'email al W3C con la tua proposta, in modo che possano aggiungere CSS 4+ nei prossimi 20 anni)

+2

le immagini non sono gli unici elementi che prendono altezza e larghezza – Rob

+0

lui sta parlando delle "immagini" solo – dusoft

+0

l'esempio era su un'immagine non intendeva rivolgersi solo agli elementi dell'immagine – Chris

5

Se la convenzione di denominazione è stata seguita, devi definire qualcosa come:

dimension-width: 150px; 
dimension-height: 200px; 

per essere in grado di utilizzare

dimension: 150px 200px; 

io non sono sicuro che questo migliorerebbe nulla.

Edit:

inoltre necessario considerare min-height/max-height (+ larghezza). Dove sarebbero questi adattarsi con una proprietà 'dimensione'?

+0

'Dove sarebbero questi in forma ...' smth come min-dimensione/dimensione massima – Chris

1

AFAIK qualcosa del genere non esiste. Immagino il motivo per cui esistono forme "lunghe" e "brevi" per es. margin (margin-top/bottom/...) è che è naturale averli. Come iniziano con la stessa parola. margin.

Ma per width e height non c'è comune prefisso e qualcosa come dimension, dimension-width, dimension-height suona strano ora. Ma potrebbe non sembrare strano se avessero scelto di specificarlo in questo modo nello standard css.

Ora si potrebbe prendere in considerazione la stessa domanda su doctype.com in cui qualcuno potrebbe avere più informazioni su come è stato specificato il css e se questa discussione è mai venuta fuori.

+0

Come nota, doctype.com chiuso a partire dal 15 febbraio, 2013. [Ulteriori informazioni a riguardo] (http://blog.doctype.com/doctype_is_closing_on_the_14th_1). – Krease

0

Probabilmente per una serie di motivi:

  1. Non pensavano a questo proposito al momento ;-)
  2. Non vale la pena extra complicazione (per quanto lieve) in spec, trasformazione , documentazione, ecc. quando è possibile raggruppare solo due valori - la maggior parte degli altri sono 4 al minimo .
  3. Non penso che "dimensione" sia il nome corretto da utilizzare. Preferirei la dimensione , ma ciò potrebbe implicare la dimensione del file.
  4. Per aggiungervi alla le specifiche, che avrebbe dovuto favorire 'dimensione-width' piuttosto che 'width' di mantenere la denominazione stessa come margine-xxx.
Problemi correlati