Freigeisterhaus Foren-Übersicht
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   NutzungsbedingungenNutzungsbedingungen   BenutzergruppenBenutzergruppen   LinksLinks   RegistrierenRegistrieren 
 ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

HTML, CSS und Safari

 
Neues Thema eröffnen   Neue Antwort erstellen   Drucker freundliche Ansicht    Freigeisterhaus Foren-Übersicht -> DAU's Paradise
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
AgentProvocateur
registrierter User



Anmeldungsdatum: 09.01.2005
Beiträge: 7851
Wohnort: Berlin

Beitrag(#1728179) Verfasst am: 15.02.2012, 01:17    Titel: HTML, CSS und Safari Antworten mit Zitat

Hallo,

ich muss eine (lokale) Webseite erstellen. Die User haben Apple-Computer (Macs), ich nehme an, die verwenden den Browser Safari.

Nun habe ich folgendes Problem: mein Layout ist ziemlich kompliziert und ich verwende daher Tabellen. Aber: diese werden in Mozilla und in Safari unterschiedlich dargestellt und zwar ist der vertikale Abstand zwischen den Zeilen unterschiedlich: 4 Pixel in Mozilla und 8 Pixel in Safari.

Beispiel (stark vergößert):



(links der roten Linie: Mozilla, rechts: Safari)

Ich verwende Windows, d.h. das ist ein Screenshot aus Safari für Windows. Vielleicht wird das bei einem Mac in Safari anders angezeigt?

Quelltext der HTML-Datei:

Code:
<html>
<head>
  <meta>
  <title>Test</title>
</head>
<body>
<table>
  <tbody>
    <tr>
      <td>1</td>
      <td><input></td>
    </tr>
    <tr>
      <td>2</td>
      <td><input></td>
    </tr>
  </tbody>
</table>
<br>
</body>
</html>

Meine Frage ist nun: wie kann ich Safari dazu bringen, mir einen 4-Pixel-Abstand anzuzeigen? Habe gegoogelt, aber nichts gefunden. Wie ich umgekehrt Mozilla dazu bringen kann, einen 8-Pixel-Abstand anzuzeigen, weiß ich: ich kann "border-spacing: 4px;"definieren. Aber das will ich eigentlich nicht, ich will, dass Safari einen 4-Pixel-Abstand anzeigt, weil ein 8-Pixel-Abstand <s>scheiße</s> ziemlich bescheiden aussieht.

Aber wie kann ich das erreichen?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
gollrich
superheftig general



Anmeldungsdatum: 06.12.2007
Beiträge: 1098
Wohnort: Mannheim

Beitrag(#1728549) Verfasst am: 16.02.2012, 11:29    Titel: Antworten mit Zitat

Ich selbst bin kein CSS Design Experte... aber ich würde für soetwas ein Browserweiche nutzen....
Also den Feldern eine Klasse geben,
diese Klassen entsprechend für Mozilla und Safari in einer eigenen CSS-Datei stylen.
dann per JavaScript im Header entscheiden lassen welche der CSS Dateien geladen werden soll.

Aber sicher gibt es auch noch andere CSS Profitips wie man das anders bewerkstelligen kann....

grüße gollrich
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
AgentProvocateur
registrierter User



Anmeldungsdatum: 09.01.2005
Beiträge: 7851
Wohnort: Berlin

Beitrag(#1728737) Verfasst am: 16.02.2012, 20:20    Titel: Antworten mit Zitat

Danke für die Antwort, habe es jetzt durch Probieren selber herausgefunden. (Falls es jemanden interessiert: das Problem ist nicht die Tabelle, sondern die Eingabefelder ("input"). Bei solchen verwenden die unterschiedlichen Browser anscheinend unterschiedliche Vorgabe-Werte für 'margin'. Habe jetzt in meiner CSS-Datei folgendes hinzugefügt: "input {margin-top: 0px; margin-bottom: 0px;}" - damit geht's.)

Mal noch 'ne allgemeine Frage zu CSS: kann man einen Stil wiederverwenden? Nehmen wir mal an, ich hätte eine Menge von Elementen, die sehr viele Eigenschaften gemeinsam hätten, sich in lediglich einer Eigenschaft unterschieden. Nun wäre es praktisch, wenn man in der CSS-Datei einmal einen Stil (nennen wir ihn mal "mainbutton") für die gemeinsamen Eigenschaften definieren könnte und sich bei den einzelnen Elementen ("button1", "button2", etc.) auf die Eigenschaften von "mainbutton" beziehen könnte. Ist halbwegs verständlich, was ich meine? Und wenn ja: geht das?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
alae
auf eigenen Wunsch deaktiviert



Anmeldungsdatum: 23.03.2006
Beiträge: 7039

Beitrag(#1728741) Verfasst am: 16.02.2012, 20:39    Titel: Antworten mit Zitat

AgentProvocateur hat folgendes geschrieben:
Mal noch 'ne allgemeine Frage zu CSS: kann man einen Stil wiederverwenden? Nehmen wir mal an, ich hätte eine Menge von Elementen, die sehr viele Eigenschaften gemeinsam hätten, sich in lediglich einer Eigenschaft unterschieden. Nun wäre es praktisch, wenn man in der CSS-Datei einmal einen Stil (nennen wir ihn mal "mainbutton") für die gemeinsamen Eigenschaften definieren könnte und sich bei den einzelnen Elementen ("button1", "button2", etc.) auf die Eigenschaften von "mainbutton" beziehen könnte. Ist halbwegs verständlich, was ich meine? Und wenn ja: geht das?

Ich bin mir zwar nicht sicher, ob ich dich richtig verstanden habe, aber: Ein Element kann mehrere Klassen haben.
Code:
«whatever class="mainbutton button1"»...

...

«whatever class="mainbutton button2"»...

(ich benutze hier «», weil die Forumssoftware sonst was abschneidet)

Und in der CSS-Datei steht dann:
Code:
.mainbutton
{
/* alles, was die gemeinsam haben */
}

.button1
{
/* alles, was nur button1 betrifft */
}

.button2
{
/* alles, was nur button2 betrifft */
}


Ich hoffe, das ist es, was du wissen wolltest.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Critic
oberflächlich



Anmeldungsdatum: 22.07.2003
Beiträge: 16361
Wohnort: Arena of Air

Beitrag(#1728747) Verfasst am: 16.02.2012, 20:55    Titel: Antworten mit Zitat

AgentProvocateur hat folgendes geschrieben:
Danke für die Antwort, habe es jetzt durch Probieren selber herausgefunden. (Falls es jemanden interessiert: das Problem ist nicht die Tabelle, sondern die Eingabefelder ("input"). Bei solchen verwenden die unterschiedlichen Browser anscheinend unterschiedliche Vorgabe-Werte für 'margin'. Habe jetzt in meiner CSS-Datei folgendes hinzugefügt: "input {margin-top: 0px; margin-bottom: 0px;}" - damit geht's.)

Mal noch 'ne allgemeine Frage zu CSS: kann man einen Stil wiederverwenden? Nehmen wir mal an, ich hätte eine Menge von Elementen, die sehr viele Eigenschaften gemeinsam hätten, sich in lediglich einer Eigenschaft unterschieden. Nun wäre es praktisch, wenn man in der CSS-Datei einmal einen Stil (nennen wir ihn mal "mainbutton") für die gemeinsamen Eigenschaften definieren könnte und sich bei den einzelnen Elementen ("button1", "button2", etc.) auf die Eigenschaften von "mainbutton" beziehen könnte. Ist halbwegs verständlich, was ich meine? Und wenn ja: geht das?


Vererbung in CSS? (Beispiel http://dorward.me.uk/www/css/inheritance/ ). Die wird beschrieben in der aktuellen CSS-Spezifikation ( http://www.w3.org/TR/CSS2/css2.pdf ) u.a. in Kapitel 6, wobei aber einige Eigenschaften sich nicht vererben lassen ( http://iam.colum.edu/phuber/week2/CSScheatSheet.pdf ).
_________________
"Die Pentagon-Gang wird in der Liste der Terrorgruppen geführt"

Dann bin ich halt bekloppt. Mit den Augen rollen

"Wahrheit läßt sich nicht zeigen, nur erfinden." (Max Frisch)
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
AgentProvocateur
registrierter User



Anmeldungsdatum: 09.01.2005
Beiträge: 7851
Wohnort: Berlin

Beitrag(#1728751) Verfasst am: 16.02.2012, 20:59    Titel: Antworten mit Zitat

alae hat folgendes geschrieben:
Ich hoffe, das ist es, was du wissen wolltest.

Ah, danke, gut zu wissen, dass man einfach mehrere Werte für das Attribut "class" angeben kann. Habe noch ein bisschen rumprobiert, man kann es auch einfach so machen:

Code:
.button1, .button2
{
/* alles, was die gemeinsam haben */
}

.button1
{
/* alles, was nur button1 betrifft */
}

.button2
{
/* alles, was nur button2 betrifft */
}
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen   Drucker freundliche Ansicht    Freigeisterhaus Foren-Übersicht -> DAU's Paradise Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.



Impressum & Datenschutz


Powered by phpBB © 2001, 2005 phpBB Group