Beiträge von Basi

    Du kannst mittels einer .htaccess Datei dem PHP Parser mitteilen, dass er andere Dateien berücksichtigen soll.

    Dazu legst du eine Textdatei an und speicherst diese als ".htaccess", nichts vor dem Punkt. Du musst unter Windows darauf achten, dass du bekannte Dateiendungen angezeigt hast, sonst speichert das als ".htaccess.txt".

    Der Inhalt hängt jetzt von der Art des Servers ab. Wahrscheinlich läuft ein Apache Modul oder Ähnliches, dann so:

    Code
    AddType application/x-httpd-php .html .htm


    Oder PHP läuft per CGI (wahrscheinlich nicht), dann:

    Code
    AddHandler application/x-httpd-php .html .htm


    Du kannst auch noch weitere Dateiformate anhängen. Zum Beispiel .shtml, .cshtml, .asp, .aspx. Einfach die Endungen durch Leerzeichen getrennt angeben so wie im Beispiel.

    Man könnte sogar Javascript oder CSS Dateien parsen lassen, dann muss man jedoch mittels PHP einen korrekten Header mit übergeben.

    Das stimmt so nicht ganz.

    In HTML 5 kann man Void Elemente auch mit Slash schreiben:

    HTML
    <br> <!-- okay -->
    <br /> <!-- auch okay -->


    In XHTML ist nur die zweite Variante legitim, da XHTML auf XML basiert und XML das NET(Null End Tag) Feature von SGML (Standard Generalized Markup Language) geerbt hat. Es gibt z. B. auch XHTML5. Kommt also auch auf den Doctype an.

    Der Punkt ist bei relativen Pfadangaben, die auf Dateien zeigen, nicht nötig:

    HTML
    <img src="./bild.jpg">
    <img src="bild.jpg"> <!-- identische Interpretation -->

    5.1. Normal Examples

    Code
    [...]
    g          = <URL:http://a/b/c/g>
    ./g        = <URL:http://a/b/c/g>

    Elegant ist gut :)

    Du brauchst dich mit deinem Code nicht verstecken. Wir haben alle mal klein angefangen und mehr als verbessern kann man dich nicht, da hätten doch alle etwas von. Zeig doch einfach mal wie du es gelöst hast? Sicher interessant auch in Kombination mit der Twitch API.

    Klar sieht man seine Änderungen direkt. Bei Programmierung mit Compiler weiß man dafür vorher, was in etwa passiert. Das ist bei HTML und Konsorten nicht immer der Fall :D

    Es gibt nur 2 Dinge die da jetzt schieflaufen können:

    Schreibweise: Hast du auf Groß-/Kleinschreibung geachtet? Hast du die richtige Endung gewählt? .jpg/.jpeg?

    Pfad: Hast du den richtigen Pfad gewählt? Versuche mal das Bild ins selbe Verzeichnis wie die HTML Datei zu packen und schau ob es so klappt.

    Was sagt die Konsole? Schau mal hier unter dem Punkt 3 Javascript. In der Konsole gibt es einen Reiter der heißt Netz oder Netzwerk oder ähnlich, wenn eine Datei nicht geladen werden kann, findest du da eventuell Informationen dazu.

    Hey!

    In der Verlinkung nicht mit "ftp://" arbeiten, sondern mit "http://". Auf den FTP Server möchte (und kann) die HTML Datei nicht zugreifen.

    Auf deinem Webserver ist unter dem von dir angegebenen Pfad keine Datei hinterlegt, hast du eventuell vergessen die Subdomain anzugeben?

    Das Sicherheitszertifikat ist scheinbar einfach nur auf fosbos-straubing.de beschränkt und greift nicht für rethinkg.fosbos-straubing.de.

    Hey!

    Was du suchst war vor langer, langer Zeit mal Bestandteil von HTML und nannte sich marquee.

    No, really. don't use it.


    Heute benutzt man für so etwas natürlich Javascript. Was blieb ist jedoch der Name, es gibt also ein jQuery Plugin namens marquee: https://github.com/aamirafridi/jQuery.Marquee

    Also schnell einlesen wie das Ganze verwendet wird, jQuery und das Plugin in die Seite laden und fertig. Fast.

    Wenn du jetzt noch darauf Rücksicht nehmen willst, ob der Text breiter ist als das Element in dem es sich befindet, brauchst du ein kleines Workaround:

    HTML
    <div id="marquee">
        <span>Hier der Text</span>
    </div>


    Die Breite des div-Elements nimmt (im Normalfall) 100% des verfügbaren Platzes oder die ihm zugewiesene Breite an. Das span-Element hingegen ist nur so breit wie sein Inhalt. Das muss man nur noch mittels Javascript herausfinden:

    JavaScript
    // Da du jQuery sowieso laden musst am Besten so:
    if($("#marquee span").width() > $("#marquee").width())
        $('#marquee').marquee();
    
    
    
    
    // Pures Javascript wäre:
    if(document.getElementById("marquee").offsetWidth > document.getElementById("marquee").getElementsByTagName("span")[0].offsetWidth)
        $('#marquee').marquee();


    Ansonsten kannst du natürlich auch deine eigene Funktion schreiben wenn du Lust hast.

    Hier noch in Aktion bei codepen: codepen.io/VabNOa

    Wenn die ganze Kiste bei dir dank Twitch nun völlig anders funktioniert, müsstest du noch mal detailliert erklären wie (Code).

    Auf die richtige Reihenfolge muss man definitiv achten.

    Jede Javascript Datei enthält Funktionen. Viele Funktionen sind sehr allgemein und werden von velen Programmen gebraucht. Oft wird auch nicht mit Namensrumen gearbeitet.

    Ohne zu sehr ins Detail zu gehen: Manche Funktionen sind auf vorherige Funktionen angewiesen, diese müssen dann natürlich zuerst geladen werden. Es kann auch passieren, dass sich Funktionen überschreiben. In welcher Reihenfolge man Dateien laden sollte, wird oft an der Bezugsquelle der Dateien dokumentiert.

    Das ist mit Javascript gar nicht so schwer umzusetzen. Bist du damit vertraut?

    Wenn man eine Excel Tabelle kopiert, erhält man folgende Ausgabe:

    Code
    Spalte 1	Spalte 2
    Zeile 1	Wert 1.1	Wert 1.2
    Zeile 2	Wert 2.1	Wert 2.2


    Jetzt muss man wissen, dass jede Zelle (bis auf die letzte in einer Zeile) mit dem HT-Steuerzeichen versehen ist (Horizontal Tab). Die letzte Zelle einer Zeile endet mit dem LF-Steuerzeichen (Line Feed/New Line). Die Steuerzeichen werden natürlich nicht angezeigt sondern ausgeführt, theoretisch sieht der kopierte Text so aus:

    Code
    \t   Spalte 1\t   Spalte 2\n
    Zeile 1\t   Wert 1.1\t   Wert 1.2\n
    Zeile 2\t   Wert 2.1\t   Wert 2.2\n


    Mit der Split-Funktion von Javascript kann man jetzt die Zeilen zerteilen:

    JavaScript
    var excelInput; // Enthält den kopierten Text aus Excel
    var rows = excelInput.split('\n');


    Daraus ergibt sich ein Array mit 4 Elementen. Das letzte Element kann leer sein, muss aber nicht. Eine kurze Prüfung und wenn leer dann weg damit:

    JavaScript
    (rows[rows.length-1] == "") ? rows.pop() : rows;


    Wenn man jetzt mit einer Schleife durch die Elemente läuft und nun \t splittet, erhält man für jede Zelle einen Eintrag im multidimensionalen Array:

    JavaScript
    for (var i = 0; i < rows.length; i++)
    {
        cells[i] = rows[i].split('\t');
    }

    Jetzt kann man mittels cells[Zeilenindex][Spaltenindex] auf gewünschte Zellen zurückgreifen.

    Das könnte man zum Beispiel dafür nutzen, um vorhandene Input Felder zu füllen, komplett neue Input Felder aus der Tabelle zu generieren, oder wie in meinem Beispiel (hier: codepen/YqZXwE) die Tabelle als HTML Tabelle generieren.

    Was genau du machst kommt natürlich darauf an was du vorhast. Hat die Tabelle einen festen Aufbau? Kann die Tabelle sich unterscheiden? Sollen bereits vorhandene Input Felder gefüllt werden?

    Außerdem berücksichtigt diese Methode natürlich nicht alle Fälle. Formatierung geht völlig verloren und bei verbundenen Zellen werden diese zwar berücksichtigt, aber als unverbunden vermerkt.

    Am meisten würde mich die fehlende Kontrolle stören. Sollen später Änderungen am System durchgeführt werden, ist es zusätzlicher Aufwand, zu prüfen, ob irgendeine Anwendung unerwünschte Auswirkungen oder Restriktionen mit sich bringt.

    Außerdem kann ich als Arbeitgeber nicht mehr vollends kontrollieren, auf welchem Wege auf Dateien zugegriffen werden. Das schädigt unter Umständen wichtige Statistiken.

    Eventuell möchte ich auch sicherstellen, dass für den Betrieb unwichtige Arbeiten gering gehalten werden, um mein Geld und die damit bezahlte Arbeitszeit so effizient wie möglich zu gestalten.

    Ich könnte noch ewig so weiter machen, aber mal so als Anreiz. Wenn du von einer Firma solcher Größe sprichst, geht einfach nichts ohne einen Haufen Bürokratie.

    Man kann auch bei reinem HTML und CSS schon von einer Applikation sprechen. Der Inhalt wird nur einfach nicht dynamisch erstellt. Wenn dein Arbeitgeber dir das verbietet, wirst du wohl nicht drum herum kommen.

    Um zum speziellen Fall etwas sagen zu können, fehlen natürlich viele Informationen. Mir fallen jedoch auch so schon Gründe ein, wegen denen man das Ganze als bedenklich einstufen könnte.

    Dann bleibt dir wohl nur Javascript.

    Unsicher wird deine Seite dadurch definitiv nicht, dabei geht es um Cross Site Scripting (XSS). Es wird versucht durch bestehenden Code Javascript zu injizieren, um beispielsweise Sessions auszulesen. Ich gehe bei deinem Projekt nicht davon aus, dass du überhaupt entwendbare Sessions verwendest. Durch heutige Technik (Browser/Server) sowieso nicht mehr wirklich eine Gefahr.

    Du musst auch nicht viel lernen für so ein kleines Vorhaben.

    Das geht schon, sogar relativ einfach. Mithilfe vom z-index wird das Menü einfach hinter dem entsprechenden Container verborgen und unter diesem eben nicht mehr: codepen Beispiel

    HTML
    <nav id="main_menu">[...]</nav>
    <section id="content1">[...]</section>
    <section id="content2">[...]</section>

    Du meinst übrigens Javascript, nicht Java. Java hat in modernen Webanwendungen absolut nichts mehr verloren :)

    Ich würde sagen, eine mobile Website wird in seperaten Dateien angelegt. Ein Satz Dateien für die Desktop Version, ein Satz Dateien für die mobile Version. Im Gegensatz zu respnosive kann man da einfach an Dateigröße und Anfragen an den Server sparen.

    Am Beispiel alternate.de gegen m.alternate.de (einfach aus dem Leben gegriffen):

    Desktop

    Code
    Netzwerkanalyse
    Anfragen: 166
    Größe:    2.118,2 kb
    Zeit:     6 s
    
    
    
    
    HTML:     97,2 kb
    CSS:      405 kb


    Mobil

    Code
    Netzwerkanalyse
    Anfragen: 50
    Größe:    1.456,8 kb
    Zeit:     2,45 s
    
    
    
    
    HTML:     43,5 kb
    CSS:      141 kb

    Wenn man jetzt in den Desktop Quellcode noch responsive Code mit einbringt, wird es noch länger dauern.

    Bei kleineren Projekten macht es aber denke ich mehr Sinn direkt responsive zu arbeiten.