PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr

PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr (https://www.php-resource.de/forum/)
-   HTML, JavaScript, AJAX, jQuery, CSS, Bootstrap, LESS (https://www.php-resource.de/forum/html-javascript-ajax-jquery-css-bootstrap-less/)
-   -   Positionierung, Größe und anderes von Form-Elementen (https://www.php-resource.de/forum/html-javascript-ajax-jquery-css-bootstrap-less/96263-positionierung-groesse-und-anderes-von-form-elementen.html)

mac4design 23-04-2009 05:48

Positionierung, Größe und anderes von Form-Elementen
 
Hallo Community!

Ich habe ein Problem: Meine Formularfelder werden bei Safari und Firefox komplett anders gerendert, als ich es will.

Code:

<form>
<input type="text" id="textField" />
<input type="submit" id="submitButton" />
</form>

Und mein CSS:
Code:

#textField, #submitButton {
                display: inline-block; /* Damit beide nebeneinader sind, Größe jedoch geändert werden kann */
                background: white none;
                border: 2px solid black; /* Damits sichtbar ist =) */
        }

Nun haben beide eine andere Höhe. Sieht nebeneinander natülich blöd aus. Dann füge ich dem CSS noch ein
Code:

height: 17px;
hinzu. Jetzt ist der Submit-Button unheimlich klein, sind ja auch 17px. Der Text-input ist aber nich geschrumpft, sondern hat seine Größe behalten, und ist jetzt größer als der Submit-Button. Außerdem ist der Text im Submit-Button jetzt zu groß, lässt sich auch weder über font-size noch line-height beeinflussen, klebt ein wenig hilflos am unteren Border vom Button. Weils noch nicht genug ist, wird der Submit-Button im Firefox nun plötzlich um ein Pixel nach oben verschoben, wie ist das nun möglich?

Formularfelder mit CSS zu designen war mir schon immer ein Rästel... Auf der anderen Seite habe ich gegoogelt, und nichts gefunden. Auch auf diesem Forum nicht. Ich bin nämlich eigentlich ein anderer Benutzer, war hier nur schon lange nich mehr und habe Benutzernamen, Passwort und E-Mail, mit dem ich mich angemeldet habe, vergessen. Anyway, ich scheine der Einzige mit diesem Problem zu sein =)

Grüße

mac4design

wahsaga 23-04-2009 06:54

Re: Positionierung, Größe und anderes von Form-Elementen
 
Formularelemente sind mit am schwierigsten browserübergreifend "gleich" zu formatieren.

Nicht alle Browser lassen diesbezüglich "alles mit sich machen" - aus dem Gedanken heraus, dass gewisse Controls dem Nutzer in einem ihm möglichst bekannten Stil präsentiert werden sollten, um durch den Wiedererkennungseffekt die Benutzbarkeit zu erhöhen.
(Und Safari ist diesbezüglich mit einer der schlimmsten, weil Apple ja meint, immer und überall seine Designvorstellungen durchdrücken zu müssen. Der Laden sollte statt Computern vielleicht lieber Frauenmode herstellen ...)

Zitat:

Weils noch nicht genug ist, wird der Submit-Button im Firefox nun plötzlich um ein Pixel nach oben verschoben, wie ist das nun möglich?
Liegt vermutlich daran, dass sich durch deine Formatierung die Zeilenhöhe geändert hat, so dass die vertikale Ausrichtung innerhalb der Zeile sich nun derart äussert. (Da könnte man mit vertical-align ggf. was dran machen.)

Ob du dir mit dem display:inline-block einen Gefallen tust, weiss ich nicht - könnte je nach Browser zu weiteren Komplikationen führen.
Ich würde stattdessen lieber versuchen, über font-size und line-height die Höhe zu bestimmen; evtl. noch padding dazu, wenn gewünscht.

Und wenn das auch nicht zufriedenstellend klappen will - dann vielleicht nur das Eingabefeld mit einer Höhe versehen, und statt des Submitbuttons ein <input type=image> nehmen ... wenn das Aussehen des Formulars wirklich so wichtig für den Seelenfrieden sein sollte.

mac4design 23-04-2009 07:03

Da ist ja noch jemand so früh auf =)

Also der Tipp mit dem vertical-align ist wunderbar, komischerweise habe ich das vertical align auf den Submit-Button angewendet, jedoch ist dann aber das Text-Input auch um eins nach oben gegangen statt das Submit um eins nach unten, aber das ist wunderbar in Ordnung, wird auch von FF und Safari gleich angezeigt, nur vom Dreamweaver-internen Safari (? oder was benutzt der?) nicht, was mich zuerst etwas iritiert hat.

Also soll ich vielleicht statt dem inline ein float versuchen?

Grüße
mac4design

P.S.: Wenn Macs Frauenmode wären, dann vielleicht schon, aber da ich keine Frau bin hab ich da auch was dagegen weil ich meinen Mac ziemlich klasse finde =)

Kropff 23-04-2009 10:23

Zitat:

nur vom Dreamweaver-internen Safari
der hat seine eigene darstellungsmethode. und auf die darfst du dich nie(!) verlassen. eigentlich solltest du das teil eh nicht benutzen.

peter

mac4design 23-04-2009 16:46

Liste der Anhänge anzeigen (Anzahl: 1)
Und du schwörst auf...? Coda? Finde ich nämlich auch sehr interessant.

Mal die offizielle Lösung zu meinem Problem, hab ich zwar schon gesagt, aber Leute die den Post einfach nur durchscannen mögen es vll nich merken:

display: inline-block auf beide und vertical-align:top auf den Button
außerdem, wenn wir eine Gesamthöhe von 24px haben wollen, setzen wir height: 24px beim Submit-Button und height: 17px; padding: 5px 5px 0; beim Formularfeld
, glaubts mir oder nicht, den Trick habe ich bei dieser schönen Seite gesehen und warum auch immer, das funktioniert. Im Anhagng sieht mans nochmal genau, visuell ists immer einfacher.

Also wenn jemand weiß, warum das so ist - eine Antwort hätte ich gerne noch weil bei CSS kaufe ich ungern die Katze im Sack das geht dann wahrscheinlich beim ersten public beta nach hinten los...

Grüße

mac4design


Alle Zeitangaben in WEZ +2. Es ist jetzt 20:40 Uhr.

Powered by vBulletin® Version 3.8.2 (Deutsch)
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.3.0
[c] ebiz-consult GmbH & Co. KG