Molti siti Web, ad esempio html5 boilerplate, utilizzano due spazi. Progetti predefiniti di Visual Studio come ASP.NET MVC 3 utilizzano una scheda. Uno diventerà il modo standard di rientrare in html?indentazione HTML standard, tab o due spazi?
risposta
Non penso che ci sia uno standard specificato dal W3C. Poiché HTML toglie comunque spazio in eccesso, dovresti scegliere quello che ti piace di più.
Penso che il giorno in cui il rientro dell'HTML diventerà una pratica standard, ci sarà molta gioia, indipendentemente da quale sia lo standard attuale.
Vorrei suggerire le schede, principalmente perché li uso e sono più comodo con loro. Ma si risparmiano anche alcuni byte da scaricare per ogni pagina e, con milioni di richieste di pagina, si sommano.
Non utilizzare le schede; usa due spazi. Le schede sono problematiche perché possono avere una larghezza diversa in diversi editor (e terminali, se è per questo). Poiché gli spazi vengono rimossi quando si riordina il codice HTML prima della distribuzione, non vi è alcun vantaggio in termini di larghezza di banda nell'utilizzo delle schede; semplicemente introducono un carattere jolly nella tua esperienza di sviluppo.
Due spazi stanno emergendo come standard perché sono "appena sufficienti" indentazione per rendere l'HTML chiaramente indentato agli occhi della maggior parte delle persone, ma poiché HTML tende ad annidare molto profondamente - molto più profondamente di quanto si farebbe comunemente durante la programmazione - e nulla più di due spazi tende a spingere HTML fuori dal bordo destro di uno schermo da 80 colonne abbastanza rapidamente.
Non sono d'accordo sul fatto che le schede siano diverse in diversi editor è un problema, è un vantaggio, purché le utilizzi solo all'inizio delle righe. (come per la mia risposta qui sotto) – Myster
Sono d'accordo. 4 spazi non sono adatti per HTML perché la struttura nidificata è solitamente troppo profonda. –
Non esiste uno standard, ma ...
Utilizza schede, è quello che stanno per.
Vantaggi: meno byte, l'utente può impostare la larghezza di visualizzazione preferita.
Avvertenza: le schede utilizzate all'interno delle linee per allineare le colonne sono potenzialmente allineate se l'ampiezza della scheda del creatore è diversa da quella del visualizzatore, motivo per cui utilizzo gli spazi per allineare le colonne.
Modifica Sto invecchiando e non mi interessa più tanto. Anche se considero ancora le schede superiori nei loro vantaggi elencati sopra. Dovresti anche considerare: i più semplici (spazi), o l'adozione più ampia (nella tua comunità, possibilmente più ampia rispetto al solo posto di lavoro), ciò che funziona per te.
I TAB non sono pensati per MarkUp-Languages! (Anche se Myster e MS la pensano così!) C'è un motivo per cui il boilerplate usa gli spazi e perché sono esattamente due. MS non è veramente famoso per l'utilizzo di formati di interscambio ragionevoli, quindi mi asterrò dal dare un commento su ASP.NET MVC3.
I TAB sono stati utilizzati nell'era delle applicazioni terminali. Al giorno d'oggi è meglio che l'interfaccia utente venga interpretata, quindi come uno scambio di dati/archivio specifico. Quindi l'argomento come "usa le schede in quanto sono più veloci da digitare" ... mi lascia senza parole. Sì, l'editor DOVREBBE interpretare un'azione dell'utente e concludere l'azione appropriata, ma se l'interfaccia utente/editor non è in grado di tradurre una scheda in due spazi, allora stai chiaramente utilizzando lo strumento sbagliato!
Quindi concordo pienamente con il ragionamento di Rodi! E questo è anche il motivo per cui qualsiasi editor ragionevole fornisce un'opzione per la conversione da tab a spazio.
L'argomento "dimensioni di archiviazione salvate" è fasullo, perché la compressione nello scambio html è quasi obbligatoria. Uno spazio semplificato potrebbe diventare il token più utilizzato nel tuo documento e risultare efficacemente compresso fino a pochi bit (2-4)!Quindi suddividere gli spazi in schede e spazi potrebbe danneggiare la compressione.
E solo gli spazi sono coerenti su più applicazioni. L'interpretazione delle schede può variare molto a partire da 2-8 spazi.
Se non si desidera terminare fino a riformattare ogni volta che l'infrastruttura sottostante cambia, utilizzare due spazi.
ps: ho appena verificato la presenza di spazi per questo html (fino al paragrafo precedente) e ho ottenuto 15177. Il successivo carattere frequente era 't' con 4468. l'occorrenza delle schede aveva un rispettabile 1101. Utilizzando gzip e lzo, la versione tab era in effetti una frazione più piccola di quella degli spazi.
Quindi non riesco a dissuadere completamente l'argomento "spazio di archiviazione" - per quanto mi piacerebbe.
Sembra che non ci sia una risposta assoluta.
La linguetta è stata uno standard nella codifica del programma effettivo - e sì che deriva da "i giorni degli schermi dei terminali 80-caratteri ", ma ciò non lo rende obsoleto.
Come qualcuno ha detto in precedenza, "Utilizzare le schede, è quello per cui sono".
L'argomento che alcuni editori li visualizzano in modo diverso è un'ammissione che non esiste uno standard in editor e che non dovrebbe equivale a costringere uno standard particolare marcatura - a meno che non v'è un altro motivo valido per farlo, come se scheda ha causato un effetto distruttivo per il markup. Se il tuo editore ti obbliga a prendere determinate decisioni prova a utilizzare un editor che ti permetta di fare le cose in modo coerente, se è ragionevole farlo.
Alla fine della giornata, finché non emerge uno standard effettivo, utilizzare ciò che funziona ed è generalmente accettato. Sembra che la scheda o due spazi siano entrambi generalmente accettati al momento, ma che si allontano dalla scheda perché alcuni editor non la visualizzeranno in modo coerente è solo un difetto o una svista nell'editor.
L'argomento "un solo tasto" può sembrare pigro, ma in realtà è più efficiente che è un punto per tale metodo.
Facendo riferimento alla C programmazione, Linus Torvalds, un riconosciuto (ma non assoluto) autorità, ha dichiarato: "schede sono 8 caratteri, e quindi rientranze sono anche 8 caratteri Ci sono movimenti eretici che cercano di rendere rientranze 4 (. o addirittura 2!) caratteri profondi, e questo è simile a provare a definire il valore di PI per essere 3. "
Sì, questo si riferisce al markup C e non al Web, e sì esprime il concetto con un'opinione stimata , ma il punto effettivo reso è valido. Sono sicuro che qualcuno potrebbe trovare molte altre espressioni colorate dello stesso concetto con lo , ma mi è capitato di avere questo esempio a portata di mano.
Come nessuno ha menzionato, lo Google HTML/CSS Style Guide e lo W3School HTML(5) Style Guide raccomandano 2 spazi.
Questo article porta anche un'analisi dell'effetto di tabulazioni vs spazi nella dimensione del file risultante.
- 1. Sovraccarico di indentazione degli spazi bianchi HTML
- 2. indentazione adattiva in emacs?
- 3. Emacs Haskell indentazione
- 4. Avviso di indentazione errata Eclipse
- 5. Creare Tab verticale utilizzando html css
- 6. Indentazione combinata di indentazione e sintassi HTML, PHP e Javascript in vim
- 7. Non indentazione in Netbeans
- 8. Sostituire le schede o gli spazi multipli
- 9. Smart tab in vim
- 10. Indentazione lambda errata
- 11. indentazione non funziona correttamente in emacs per Python
- 12. Come forzare SublimeText 2 per usare la tab 4 spazi? (talvolta cambia negli spazi)
- 13. Modifica formato indentazione vim
- 14. Browser lettura HTML dall'input standard
- 15. HTML o RTF?
- 16. Lo standard Html.DisplayTextFor() non codifica HTML?
- 17. Ottiene l'ordine di attivazione (o tab)
- 18. Sublime Text 3 - Double Tab Issue
- 19. Rientro in Vai: schede o spazi?
- 20. Nomi standard per campi di input HTML
- 21. Problema di indentazione tramite testo sublime 2
- 22. Soluzione temporanea per Outlook HTML HTML Rendering bug (spazi orizzontali)
- 23. È possibile riconoscere automaticamente gli stili di indentazione (tabulazioni vs spazi)?
- 24. Spacemacs set tab larghezza
- 25. HTML Form Valori PHP e spazi
- 26. API HTML: fanno parte dello standard HTML5?
- 27. Spazio vuoto HTML: spazi prima e dopo <br>
- 28. indentazione corretta di PHP?
- 29. indentazione corretta in IntelliJ
- 30. Aggiornare la dimensione degli spazi di indentazione corrente in WebStorm 2016
Possibile duplicato http://stackoverflow.com/questions/2678817/2-spaces-or-1-tab-whats-the-standard-for-indentation-in-the-rails-community –
Non duplicare l'altra domanda è specifico per le rotaie. – Myster
Non sono d'accordo sul fatto che questa sia una domanda basata sull'opinione perché sembra chiedere se esiste un solo standard corretto (che non esiste), non quale sia il migliore. –