CSS – die neusten Beiträge

Custom Cursor wird nicht angezeigt?

Die Programmierung von meiner Bildergalerie (Slider) hat mir ein paar Schwiergkeiten bereitet...schlussendlich habe ich chatgpt gefragt und der hat mir direkt einen Code ausgespuckt- der funktioniert auch soweit so gut allerdings werden die Mouse-Cursor immer noch nicht richtig angezeigt. Eigentlich sollten diese eigene Bilder anzeigen, je nachdem über welche seite des Bildes man sich bewegt. Weiß jemand wie/ob man so etwas programmieren kann bzw. wo mein Fehler liegen könnte?

- Die Bilder liegen aufjeden Fall im selben Ordner wie index2.html

Hier der vollständige Code:

<!DOCTYPE html>

<html lang="de">

<head>

 <meta charset="UTF-8">

 <meta name="viewport" content="width=device-width, initial-scale=1.0">

 <title>Bild-Slider mit benutzerdefiniertem Cursor</title>

 <style>

  body {

   font-family: Arial, sans-serif;

   display: flex;

   justify-content: center;

   align-items: center;

   height: 100vh;

   margin: 0;

   background-color: #f0f0f0;

  }

  .slider-container {

   position: relative;

   width: 500px;

   height: 300px;

   overflow: hidden;

   border: 2px solid #ccc;

   border-radius: 10px;

  }

  .slider-images {

   display: flex;

   transition: transform 0.5s ease-in-out;

  }

  .slider-images img {

   width: 100%;

   height: 100%;

   object-fit: cover;

  }

  /* Unsichtbare, transparente Boxen für Cursorsteuerung */

  .slider-nav {

   position: absolute;

   top: 0;

   width: 20%; /* Nur ein schmaler Bereich am linken und rechten Rand */

   height: 100%;

   background-color: transparent;

   z-index: 2;

  }

  /* Linke Box: Cursor ändert sich beim Hover */

  .slider-nav.left {

   left: 0;

   cursor: url('pfeillinks.png') 22 22, auto; /* Benutzerdefinierter Cursor (Hotspot bei 22px, 22px) */

  }

  /* Rechte Box: Cursor ändert sich beim Hover */

  .slider-nav.right {

   right: 0;

   cursor: url('pfeilrechts.png') 22 22, auto; /* Benutzerdefinierter Cursor (Hotspot bei 22px, 22px) */

  }

  /* Hover-Effekt: Cursor als Pointer, wenn er über den Boxen schwebt */

  .slider-nav.left:hover {

   cursor: url('pfeillinks.png') 22 22, pointer; /* Benutzerdefinierter Cursor (Hotspot bei 22px, 22px) */

  }

  .slider-nav.right:hover {

   cursor: url('pfeilrechts.png') 22 22, pointer; /* Benutzerdefinierter Cursor (Hotspot bei 22px, 22px) */

  }

 </style>

</head>

<body>

<div class="slider-container">

 <div class="slider-images">

  <img src="https://via.placeholder.com/500x300/FF5733" alt="Bild 1">

  <img src="https://via.placeholder.com/500x300/33C4FF" alt="Bild 2">

  <img src="https://via.placeholder.com/500x300/75FF33" alt="Bild 3">

 </div>

 <!-- Unsichtbare Boxen für die Linke und Rechte Navigation -->

 <div class="slider-nav left" onclick="changeSlide('prev')"></div>

 <div class="slider-nav right" onclick="changeSlide('next')"></div>

</div>

<script>

 let currentIndex = 0;

 const images = document.querySelectorAll('.slider-images img');

 const totalImages = images.length;

 function changeSlide(direction) {

  if (direction === 'next') {

   currentIndex = (currentIndex + 1) % totalImages;

  } else if (direction === 'prev') {

   currentIndex = (currentIndex - 1 + totalImages) % totalImages;

  }

  const sliderImages = document.querySelector('.slider-images');

  sliderImages.style.transform = `translateX(-${currentIndex * 100}%)`;

 }

</script>

</body>

</html>

Ich bin jedem der sich mit dem Problem beschäftigt dankbar! (:

Computer, HTML, Webseite, programmieren, CSS, Code, Programmiersprache, Webdesign, Webentwicklung, Cursor, Galerie, slider

Programmiermentor, Aspergerautismus?

Guten Tag,

Ich bin 24 Jahre alt und habe einen Asperger-Autismus, wegen welchem es mir sehr schwer fällt, einen normalen Job zu behalten, da mich die meisten als Arrogant, Komisch, o.Ä. empfinden.

Daher will ich mir ein Fundament aufbauen im Bereich Programmieren, damit ich so eventuell dann irgendwann, in einem für mich erträglichen Arbeitsumfeld, arbeiten kann.

Von der Intelligenz her reicht es vollkommen, jedoch habe ich ein kleines Defizit; Wenn ich ein ganzes Thema neu anfange, habe ich viele Fragen, welche ich meist, von einem Mentor, beantwortet bekommen muss, sonst überstrapaziert es mich und ich krieg keinen klaren Kopf mehr. Sobald ich ein solides Fundament aufgebaut habe, kann ich selbstständig darauf aufbauen. Jedoch besitze ich noch kein derartiges Fundament. Lediglich HTML kann ich sagen, dass mein Fundament relativ gut ist. CSS jedoch merke ich, dass mir dieser Mentor fehlt.

Ich würde einen engagieren und bezahlen, jedoch fehlen mir die finanziellen Mitteln, weswegen das keine Option ist…

Lange Rede, kurzer Sinn: Kennt Ihr jemanden, der eventuell bereit wäre, ein solcher Mentor zu sein?

Ich könnte mich anderweitig revanchieren, indem ich Aufträge für ihn erfülle, sobald ich dazu fähig bin.

Ich wäre froh über eine Antwort und bitte nur Antworten, wenn Ihr eine Lösung habt. Ich will kein Mitleid oder sonstiges, sondern einfach eine Lösung finden.

vielen lieben Dank und ich freue mich auf eine Rückmeldung!

Lernen, HTML, IT, programmieren, CSS, JavaScript, Asperger-Syndrom, Autismus, mentor, Umschulung, Asperger-Autimus

Warum wirft htmlspecialchars einen Syntaxfehler in meinem PHP-Webshop-Code?

<?php
include 'db.php';

$query = "SELECT * FROM products";
$result = $conn->query($query);
?>

<!DOCTYPE html>
<html>
<head>
    <title>Webshop</title>
    <style>
        /* Basic styling for the body */
        body {
            font-family: Arial, sans-serif;
            background-color: #f4f4f9;
            margin: 0;
            padding: 20px;
            display: flex;
            flex-direction: column;
            align-items: center;
        }

        /* Styling for the main heading */
        h1 {
            color: #333;
            margin-bottom: 20px;
        }

        /* Container for all products */
        .products-container {
            display: flex;
            flex-wrap: wrap;
            gap: 20px;
            justify-content: center;
        }

        /* Individual product card */
        .product-card {
            background-color: #fff;
            border: 1px solid #ddd;
            border-radius: 8px;
            box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
            overflow: hidden;
            width: 200px;
            text-align: center;
            padding: 15px;
            transition: transform 0.2s;
        }

        .product-card:hover {
            transform: scale(1.05);
        }

        /* Styling for the product image */
        .product-card img {
            width: 100%;
            height: auto;
            border-radius: 8px;
            transition: opacity 0.2s;
        }

        .product-card img:hover {
            opacity: 0.8;
        }

        /* Styling for product name */
        .product-card h2 {
            font-size: 1.2em;
            color: #333;
            margin: 10px 0;
        }

        /* Styling for product description and price */
        .product-card p {
            color: #666;
            font-size: 0.9em;
            margin: 5px 0;
        }

        .product-card .price {
            font-weight: bold;
            color: #2a9d8f;
        }

        /* Link styling */
        a {
            text-decoration: none;
            color: inherit;
        }
    </style>
</head>
<body>
    <h1>Products</h1>
    <div class="products-container">
        <?php while ($product = $result->fetch_assoc()): ?>
            <div class="product-card">
                <a href="product.php?id_product=<?= htmlspecialchars( $product['id_product']) ?>">
                    <h2><?= htmlspecialchars( $product['produktname']) ?></h2>
                    <!-- Make the image clickable to open the product details page -->
                    <img src="<?= htmlspecialchars($product['image_url']) ?>" alt="<?= htmlspecialchars($product['produktname']) ?>">
              
                <p><?= htmlspecialchars($product['produktbeschreibung']) ?></p>
                <p class="price">Price: €<?= htmlspecialchars($product['preis_pro_prod']) ?></p>
                  </a>
            </div>
        <?php endwhile; ?>
    </div>
</body>
</html>
HTML, CSS

Fokus-Keyphrase Yoast SEO - Beispiel?

Bin noch relativ neu mit SEO obwohl ich schon lange Webentwicklung mache und WordPress nutze und da ist das bekannteste wahrscheinlich Yoast SEO (oder Rank math). Ich hatte Yoast installiert und überall mit ChatGPT lesbare Titel erstellen lassen zb. Startseite – Fitnessstudio Firma XY | Fitness in Dortmund, Essen & Hamburg
Bei Fokus-Keywords habe ich [Firma XY Fitness Dortmund Essen Hamburg Kraftsport Kardio Zirkeltraining Bodybuilding Gruppentraining Personal Training Sauna [bekannter Inhaber]] ohne Komma.
(Als einfaches Beispiel, es geht nicht um Fitness).
Ich denke mal dass ich das Fokus Keyword falsch verstanden habe und das man auch nur 1 einziges Fokus Keyword haben darf wie [Personal Training]?
Und man stark auf einen Vorteil gegenüber der Konkurenz gehen soll mit dem Keyword wie das Personal Training im Vordergrund steht und nichts anderes oder nichts anderes als Erholungssport (Zumindest im Free Plan glaube ich).
Die Sache ist aber das dieses Unternehmen beispielsweise einfach "nur" besser ist (ist nicht mein unternehmen deswegen sag ich die wahrheit) als die anderen.

Es ist klar das Fitness Studios alle dasselbe anbieten, ähnliche Preise haben und alle wahrscheinlich gut sind. Nur wenn dieses Unternehmen allgemein besser ist und nicht das Rad neu erfindet oder mit irgendeinem Quatsch wirbt was macht man da ? Einfach "Premium" oder "Hochwertig" nutzen ? Das machen schon die Konkurenz obwohl es garnicht so ist anhand der Website Qualität.
Gibt es Gruppen wo man andere Leute mal drüber gucken lassen kann und nach der Meinung Fragen kann ?
Englisch Sprachige Foren kenne ich bringt mir aber nicht viel wenn sie die Sprache nicht können und ich möchte nicht Outsourcen sondern SEO besser verstehen und erlernen als Webentwickler. Die Technische Seite kenne ich schon wie Performance und Ladezeiten, Nutzerfreundlichkeit darauf habe ich geachetet. Nur ist Yoast SEO und Wordpress etwas anders als wenn man mit React/Next.js arbeitet

Computer, Marketing, Homepage, Internet, Browser, Web, HTML, IT, Webseite, CSS, WordPress, JavaScript, Suchmaschine, CMS, Drupal, Informatik, PHP, Programmiersprache, SEO, Typo3, Webdesign, Webentwicklung, React, SEO-Tool, Laravel

2 DIV mit CSS responsiv nebeneinander platzieren?

Hallo allerseits, ich versuche gerade seit zwei Tagen verzweifelt den gleichen Look zu kriegen wie der FAQ-Bereich auf folgender Seite ganz unten: https://rlax.me/

Das heißt ich möchte auf beiden Seiten mehrere Slide-Elemente haben, die unabhängig voneinander auf und zu gehen. Auf kleineren Displays soll es dann zusammengerückt werden, sodass der rechte Bereich dann unter dem unteren angezeigt wird. Aber irgendwie bekomme ich es einfach nicht hin. Ich hoffe Ihr könntet mir vielleicht etwas auf die Sprünge helfen. Hier mein Code aktuell:

<html>
<head>
<style>
	
	#left { display:block; }
	#right { display:block; }
  
  .slides {padding:0px; margin:0px auto;} 
  
  .show {display:grid; grid-template-rows:0; overflow:hidden; transition:0.75s; width:100%; margin:5px 0;}
  .show-start {min-height:0;}
  .show-end {min-height:0; align-self:end;}
  .show p {margin:0; padding:0; text-align:justify; color:#121212;}
  details.more[open] + div {grid-template-rows:10fr; padding-bottom:10px; outline:0;} 
  details summary {cursor:pointer; -webkit-tap-highlight-color:#000000; color:#121212; background-color:lightgrey; padding:10px}
  details summary:focus {outline:none !important;}
</style>
</head>




<body>
<div class="slides" id="left">
	<details class="more"><summary>The Night Café</summary></details>
	<div class="show">
		<div class="show-start">
			<p>The Night Café (French: Le Café de nuit) is an oil painting created by Dutch artist Vincent van Gogh in September 1888 in Arles.[1] Its title is inscribed lower right beneath the signature. The painting is owned by Yale University and is currently held at the Yale University Art Gallery in New Haven, Connecticut.</p>
			<br>
			<p>The interior depicted is the Café de la Gare, 30 Place Lamartine, run by Joseph-Michel Ginoux and his wife Marie, who in November 1888 posed for Van Gogh's and Gauguin's Arlésienne; a bit later, Joseph Ginoux evidently posed for both artists, too.</p>
			<p><a href="https://en.wikipedia.org/wiki/Vincent_van_Gogh">Wikepedia</a></p>
		</div>
	</div>


	<details class="more"><summary>The Night Café</summary></details>
	<div class="show">
		<div class="show-start">
			<p>The Night Café (French: Le Café de nuit) is an oil painting created by Dutch artist Vincent van Gogh in September 1888 in Arles.[1] Its title is inscribed lower right beneath the signature. The painting is owned by Yale University and is currently held at the Yale University Art Gallery in New Haven, Connecticut.</p>
			<br>
			<p>The interior depicted is the Café de la Gare, 30 Place Lamartine, run by Joseph-Michel Ginoux and his wife Marie, who in November 1888 posed for Van Gogh's and Gauguin's Arlésienne; a bit later, Joseph Ginoux evidently posed for both artists, too.</p>
			<p><a href="https://en.wikipedia.org/wiki/Vincent_van_Gogh">Wikepedia</a></p>
		</div>
	</div>
</div>


<div class="slides" id="right">
	<details class="more"><summary>The Night Café</summary></details>
	<div class="show">
		<div class="show-start">
			<p>The Night Café (French: Le Café de nuit) is an oil painting created by Dutch artist Vincent van Gogh in September 1888 in Arles.[1] Its title is inscribed lower right beneath the signature. The painting is owned by Yale University and is currently held at the Yale University Art Gallery in New Haven, Connecticut.</p>
			<br>
			<p>The interior depicted is the Café de la Gare, 30 Place Lamartine, run by Joseph-Michel Ginoux and his wife Marie, who in November 1888 posed for Van Gogh's and Gauguin's Arlésienne; a bit later, Joseph Ginoux evidently posed for both artists, too.</p>
			<p><a href="https://en.wikipedia.org/wiki/Vincent_van_Gogh">Wikepedia</a></p>
		</div>
	</div>


	<details class="more"><summary>The Night Café</summary></details>
	<div class="show">
		<div class="show-start">
			<p>The Night Café (French: Le Café de nuit) is an oil painting created by Dutch artist Vincent van Gogh in September 1888 in Arles.[1] Its title is inscribed lower right beneath the signature. The painting is owned by Yale University and is currently held at the Yale University Art Gallery in New Haven, Connecticut.</p>
			<br>
			<p>The interior depicted is the Café de la Gare, 30 Place Lamartine, run by Joseph-Michel Ginoux and his wife Marie, who in November 1888 posed for Van Gogh's and Gauguin's Arlésienne; a bit later, Joseph Ginoux evidently posed for both artists, too.</p>
			<p><a href="https://en.wikipedia.org/wiki/Vincent_van_Gogh">Wikepedia</a></p>
		</div>
	</div>
</div>

</body>
</html>  
HTML, CSS, Webdesign, Responsive Webdesign

Wie kann ich einen Button nach dem Laden einer Webseite aktiviert aussehen lassen?

Ich habe mir für mein Intranet ein kleines Video-Portal programmiert - das eigentlich ganz gut funktioniert.
Oben gibt es eine aufklappbare Ansicht mit Haupt und Unterkategorien und wenn eine Unter-Kategorie angeklickt wird öffnet sich die Seite mit einer Übersicht relevanter Videos.

Die Haupt-Kategorie gebe ich als URL-Parameter mit -> das funktioniert auch und es wird verdeckt die zu letzt verwendete Hauptkategorie angewählt.

Was nicht funktioniert, ist den Button für die aktuelle Hauptkategorie im Reitermenü so hervor zu heben als wenn er angeklickt wurde - bzw. den Button zu aktivieren.

JavaScript:

function openCity(evt, cityName) {
  // Declare all variables
  var i, tabcontent, tablinks;


  // Get all elements with class="tabcontent" and hide them
  tabcontent = document.getElementsByClassName("tabcontent");
  for (i = 0; i < tabcontent.length; i++) {
    tabcontent[i].style.display = "none";
  }


  // Get all elements with class="tablinks" and remove the class "active"
  tablinks = document.getElementsByClassName("tablinks");
  for (i = 0; i < tablinks.length; i++) {
    tablinks[i].className = tablinks[i].className.replace(" active", "");
  }

PHP-Script:


$cat = "Musik";
if (isset($_GET['cat']))
{
$cat = ($_GET['cat']);
}

echo '<details><summary> Kategorien: </summary>';
echo '<div class="tab">';

echo '<button type="button" name="Musik" class="tablinks" onclick="openCity(event, \'Musik\')">Musik</button>
<button type="button"  name="Anleitungen" class="tablinks" onclick="openCity(event, \'Anleitungen\')">Anleitungen</button>
<button type="button"  name="Kochen" class="tablinks" onclick="openCity(event, \'Kochen\')">Kochen</button>
<button type="button"  name="Backen" class="tablinks" onclick="openCity(event, \'Backen\')">Backen</button>
<button type="button"  name="Heimwerken" class="tablinks" onclick="openCity(event, \'Heimwerken\')">Heimwerken</button>';
  
echo '</div>';

echo '<!-- Tab content -->
<div id="Musik" class="tabcontent">
<div style="column-count: 5;">
'.$category_Musik.'
</div>
</div>

<div id="Anleitungen" class="tabcontent">
<div style="column-count: 5;">
'.$category_Anleitungen.'
</div>
</div>

<div id="Kochen" class="tabcontent">
<div style="column-count: 5;">
'.$category_Kochen.'
</div>
</div>

<div id="Backen" class="tabcontent">
<div style="column-count: 5;">
'.$category_Backen.'
</div>
</div>

<div id="Heimwerken" class="tabcontent">
<div style="column-count: 5;">
'.$category_Heimwerken.'
</div>
</div>';

echo '</details>';

echo '<SCRIPT type="text/javascript" language="JavaScript">
openCity(event, \''.$cat.'\'); 
</SCRIPT>';

CSS-Definitionen:



/* Style the tab */
.tab {
  overflow: hidden;
  border: 1px solid #ccc;
  background-color: #f1f1f1;
}


/* Style the buttons that are used to open the tab content */
.tab button {
  background-color: inherit;
  float: left;
  border: none;
  outline: none;
  cursor: pointer;
  padding: 14px 16px;
  transition: 0.3s;
}


/* Change background color of buttons on hover */
.tab button:hover {
  background-color: #ddd;
}


/* Create an active/current tablink class */
.tab button.active {
  background-color: #ccc;
}


/* Style the tab content */
.tabcontent {
  display: none;
  padding: 6px 12px;
  border: 1px solid #ccc;
  border-top: none;
}

so sieht es aus:

so soll es nach dem Laden der Seite aussehen:

Hat jemand eine Idee wie ich den Button für die aktuelle Kategorie beim Laden der Seite automatisch aktivieren kann?

Bild zum Beitrag
HTML, Webseite, CSS, JavaScript, HTML5, Code, PHP, Webdesign, Webentwicklung

Wie erstelle ich eine simple HTML Website mit Github Pages?

Moin,

ich verstehs wirklich nicht. Habs jetzt online als auch mit dem Github Desktop Client versucht und ich kriegs nicht hin. Es gibt Videos von vor 3 Jahren die das erklären, dann die offizielle Erklärung von Github selbst und die Erklärung von ChatGPT und nichts scheint zu funktionieren.

Ich versuch mal zu erklären was ich versucht habe: Scheinbar muss ich meinen Benutzername als Name meines Repositories angeben und in diesem Format schreiben: username.github.io. Mein Username ist beispielsweise jetzt Johannes623, das heißt meine Repository soll johannes623.github.io heißen. Außerdem soll die Repository öffentlich sein und eine README-File enthalten. Soweit so gut.

Als nächstet aktiviert man Github Pages in den Einstellungen. Dort wählt man dann "Deploy from a branch" und dann "main und /root" als Branch aus. Jetzt geht man zurück zur README-Datei und fügt dort den Code der Website ein. Danach geht man zurück zur Github Pages Seite und schaut ob die Website unter der Domain erreichbar ist.

So wurde es mir erklärt. Problem ist nur, dass all das hier nicht funktioniert.

Kann mir jemand sehr simpel und strukturiert erklären, wie ich es hinbekomme eine Website zu erstellen? Und am besten noch dazu erklären, wie ich eine Custom Domain zu dieser Website hinzufügen kann? (Hab eine bei einem anderen Anbieter gekauft).

Vielen vielen Dank schonmal im Vorraus!!

Homepage, HTML, Webseite, CSS, JavaScript, Code, Webdesign, Webentwicklung, Webhosting, github

JavaScript/html2pdf: Wieso werden die Seiten nicht richtig gedruckt?

Hi, ich möchte mit JavaScript und den Bibliotheken JsBarcode und html2pdf Barcodes generieren, einen Text oberhalb des Barcodes ausgeben und diesen dann als PDF speichern, um damit Etiketten mit Barcodes zu drucken.

Leider habe ich dabei aber das Problem, dass meine Seiten immer weiter nach oben geschoben werden und somit dann ein Label auf zwei Seiten gedruckt wird.

Kennt jemand das Problem oder kann mir dabei helfen?

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <title>html2pdf</title>
    <script src="https://cdn.jsdelivr.net/npm/jsbarcode@3.11.6/dist/JsBarcode.all.min.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/html2pdf.js/0.10.1/html2pdf.bundle.min.js"></script>
    <style>
      .label {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        width: 60mm;
        height: 30mm;
        margin: 0;
        padding: 0;
      }

      .label-text-center {
        text-align: center;
        margin-top: 0;
        margin-bottom: 0;
      }

      svg {
        width: auto;
        height: 60%;
      }
    </style>
  </head>
  <body>
    <div class="wrapper" id="element-to-print">
      <div class="label">
        <p class="label-text-center">headline01</p>
        <p class="label-text-center">headline01</p>
        <svg id="barcode" class="label-image-center"></svg>
      </div>
    </div>
    <script>
      // Generiere Barcodes für alle SVGs mit der Klasse "barcode"
      JsBarcode("#barcode", "5901234123457", { format: "EAN13" });

      // PDF-Optionen
      var opt = {
        margin: 0,
        filename: 'barcodes.pdf',
        image: { type: 'jpeg', quality: 0.98 },
        html2canvas: { scale: 2 },
        jsPDF: { unit: 'mm', format: [60, 30], orientation:'landscape' }
      };
      // Erstelle das PDF und speichere es
      html2pdf().set(opt).from(document.getElementById('element-to-print')).save();
    </script>
  </body>
</html>
Bild zum Beitrag
HTML, Webseite, CSS, JavaScript, HTML5, Programmiersprache, Webentwicklung, Frontend, node.js

Meistgelesene Beiträge zum Thema CSS