2009-11-17 11 views
7

Gibt es eine "unsichtbare" Tag in HTML (4), die ich verwenden können, um CSS UnterschiedeLayout-neutrales Tag für CSS?

tag.myclass tag.mysubclass h1 { } 

ohne jede visuelle Auswirkungen auf die HTML gerendert zu machen?

Mein Hintergrund ist, dass ich Bereiche in einer Form habe, die zu verschiedenen Gruppen gehören. Da ich die in Leuchtkästen öffne (lange Geschichte mit DOM-Operationen und so, nicht wirklich wichtig) möchte ich nicht auf die üblichen div class=x oder span class=y stylen, um die nachfolgenden Elemente zu stylen, da ich die Ränder hier neu setzen müsste, paddings dort , und so weiter.

Ein Layout-neutrales Wrapping-Tag wäre genau das, was ich in solchen Situationen brauche.

+0

Wenn Sie die klassen- und id-losen DIV-Element-Padding und Ränder gegeben haben, dann haben Sie einen Fehler gemacht. Der Zweck dieses Tags ist genau das, wonach Sie hier fragen. Also, wenn Sie den Zweck des Tags gebrochen haben ... Ich schlage vor, Sie reparieren das und benutzen es. –

+1

Mmm, du hast Recht mit den Rändern und Paddings, aber DIV ist ein Blockelement und daher nicht Layoutneutral, auch wenn es komplett zurückgesetzt wird. Es wird immer versucht, standardmäßig auf 100% Breite zu strecken und so weiter. –

+0

Ich denke, es ist am besten, die Zugabe eines Wrapper DIV als einen Vorteil, der zu Ihrem Vorteil genutzt werden kann, zu denken. Sie können Elemente auf einfache Weise positionieren, indem Sie sie gruppieren. DIVide and conquer;) (sorry, konnte mir nicht helfen) – codeinthehole

Antwort

5

Nein, gibt es nicht.

(Und das liegt daran, dass solch ein Element nicht wirklich in den Rest von HTML passt. Der einzige Grund, DIV und SPAN beeinflussen die Umgebung, weil sie Block- bzw. Inline-Elemente sind. Was wäre ein 'unsichtbares' Wenn Sie etwas völlig unabhängiges benötigen, positionieren Sie es absolut (oder relativ) und geben Sie ihm einen höheren Z-Index.

+6

\ * hust \ * '' tag \ * hust \ *;) –

+8

Lass die Toten nicht wieder auferstehen!:) –

5

Wenn Sie Elemente gruppieren möchten, verwenden Sie ein div- oder span-Tag als Wrapper-Element. Wenden Sie Ihre ID oder Klasse darauf an und formatieren Sie sie entsprechend.

EDIT

Es gibt keine 'unsichtbaren' tag - aber Margen und Polsterung kann leicht ‚margin zurückgesetzt werden: 0; Auffüllen: 0; '

-1

Sie können hinzufügen. Das wird es (offensichtlich) nicht anzeigen.

+1

Nein, das ist nicht was ich meine. Ich meine ein umgebendes Tag (einen Wrapper), das an sich keine Sichtbarkeit hat, in dem aber alle untergeordneten Elemente gerendert werden, als wäre der Wrapper nicht vorhanden. –

5

Während alle Browser Standard-Styling für viele HTML-Tags geben, ist es im Kern HTML Daten beschrieben, es formatiert es nicht.

Was Sie wahrscheinlich suchen, ist ein DIV-Tag, da kein Browser diesem Tag ein Standard-Styling verleiht.

2

Ich denke, Sie wollen ein <fieldset>.

+0

Das kommt normalerweise mit einigen Grenzen in der Benutzeroberfläche aus dem Speicher ... Ich könnte aber täuschen ... – Damovisa

+0

Ja, ich denke, ein Fieldset ist nicht "unsichtbar". Dennoch wäre es ein gutes Etikett, das zurückgesetzt und für den fraglichen Zweck "missbraucht" wird. +1. –

+1

fieldset verhält sich am besten als div, aber es kann sich viel schlechter verhalten –

3

Ich würde sagen, ein span Tag ist so neutral wie sie kommen. Ich glaube nicht, dass es einen Browser gibt, der einen Rand oder eine Auffüllung anwendet, und er umschließt einfach seinen Inhalt.

+0

Dies ist im Allgemeinen nicht ratsam, wenn Sie divs oder andere Blockelemente einfügen möchten. http://stackoverflow.com/questions/5432397/how-to-display-a-div-element-inside-a-span, obwohl es in meinem Browser http://codepen.io/nueverest/pen/grVKVJ funktionieren scheint –

0

Ich vermute, Sie können <Objekt> Tag ohne die üblichen Attribute für diesen Zweck verwenden, aber ich habe es noch nicht gründlich getestet. Es ist sogar in HTML5 (anders als FONT-Tag).