Beiträge von Sempervivum

    Ich habe mir noch deinen Header und die Screenshots in Posting #6 angesehen und eine Lösung ausgearbeitet, die mit absoluter Positionierung arbeitet. Etwas, wovon man i. allg. abrät, weil es häufig die Ursache von Problem ist. Der Grund ist, dass es dann einfach ist, das Seitenverhältnis des Bildes beim Skalieren beizubehalten.

    Den Container .ueberschrift habe ich auf die volle Höhe gesetzt und die Texte mit Flex vertikal mittig ausgerichtet. Dann mit zwei Mediaqueries die Schriftgröße angepasst, so dass die Text immer gut hinein passen.

    Code
            <header>
                <img id="header-pic" src="images/headerbild.png">
                <div class="ueberschrift">
                    <div id="headline">Vispra</div>
                    <div id="subline"><b>Vis</b>uelle <b>Spra</b>che für alle</div>
                </div>
                <div class="logo">
                    <a href="./Home.html"><img id="logo-pic" src="images/logo2.png"></a>
                </div>
            </header>

    Du öffnest das Menü durch hover, das gibt es auf einem Smartphone nicht. Viele Browserhersteller haben jedoch einen Workaround gemacht, in dem Sinne, dass die hover-Aktion durch Touch ausgelöst wird, deshalb funktioniert es im Chrome. Aber es spricht dann einiges dafür, dass das beim Safari nicht der Fall ist. Du wirst dann das Menü durch Javascript öffnen müssen.

    Leider besitze ich kein iPhone und leider beschreibst Du nicht, was genau dort das Problem ist.

    Es könnte sein, dass das kein Problem vom Safari ist sondern einfach der Darstellung auf einem schmalen Bildschirm.

    Generell kann es eine Quelle von Problemen sein, wenn mit float gearbeitet wird statt mit Flex oder Grid.

    Zitat

    Wie kann ich texte z.B. Adresse in Footer nebeneinander schreiben ohne zusätzlich Spalten zu machen?

    Da warst Du mit template-areas schon auf einem guten Wege: Du kannst Spalten verbinden, indem Du dort mehrmals die selbe Area angibst:

    Dann erstreckt sich der Footer über die ganze Breite.

    Das kannst Du dann sehr leicht erreichen, wenn Du deine Anordnung auf Flexlayout umstellst. Dann kannst Du über "order" die Reihenfolge der Elemente ganz einfach umschalten. Informiere dich z. B. hier:

    https://css-tricks.com/snippets/css/a-guide-to-flexbox/

    Und das Triggern der Umschaltung kannst Du über die Pseudoklasse :focus machen:

    https://wiki.selfhtml.org/wiki/CSS/Selek…,_active,_focus

    aber nur, wenn Du eine Einschränkung in Kauf nimmst: Sobald man wieder irgend wo anders auf der Seite klickt, stellt sich wieder der alte Zustand ein.

    Eine ganz andere Lösung wäre, die einzelnen Bestandteile der Seite in einzelne Dateien auszulagern und mit PHP-include einzubinden. Dann hättest Du zwei Seiten, aber für die einzelnen Inhalte jeweils nur eine Datei, die Du ändern müsstest.

    Mal sehen, ob ich das richtig verstehe: Die News, die man jetzt rechts sieht, sind nur ein kleiner Ausschnitt und Du möchtest, wenn man in der Nav auf "Alle News" klickt, die vollständigen, ausführlichen News in der Mitte anzeigen? Wobei sich der Rest der Seite nicht ändert? Oder möchtest Du nur einfach Mitte und rechts vertauschen beim Klick auf "News"?

    Da hat er wieder genau Recht: Oben im colgroup-Tag hast Du 2 Spalten definiert aber diese beiden Zeilen haben jeweils nur eine. Also entweder jeweils eine weitere Spalte hinzu fügen oder mit colspan dafür sorgen, dass das ein <td> 2 Spalten belegt. Oder Submit und Reset in einer Zeile zusammen fassen.

    Nein, so sind es wieder drei Spalten. Entweder so:

    Code
    <colgroup>
       <col class="first-col">
       <col class="second-col">
    </colgroup>

    oder so:

    Code
    <colgroup>
       <col span="2">
    </colgroup>

    Beide Male definierst Du zwei Spalten.

    BTW: Was verwendest Du überhaupt für einen Doctype? Selfhtml schreibt:

    Zitat

    Sowohl absolute also auch relative Breitenangaben durch width-Attribute sind in HTML5 nicht mehr möglich. Verwenden Sie entsprechende CSS-Eigenschaften.

    Ebenso würde ich erwarten, dass der Validator das <i>-Tag beanstandet.

    Genau anders herum: Mit <th colspan="2">Steckbrief</th> erzeugst Du schon zwei Spallten. Fügst Du noch eine hinzu, sind es drei, d. h. eine zuviel. Du musst die dritte Spalte weg lassen:

    Code
    <tr>
     <th colspan="2">Steckbrief</th>
    </tr>