Meddelande i inputbox

by kursolle

HTML

<!DOCTYPE html>
<html lang="en">

  <head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>

    <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,300italic,700,700italic">
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/normalize/8.0.1/normalize.css">
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/milligram/1.4.1/milligram.css">
  </head>

  <body>
    <main>
      <h1>Meddelande i inputbox</h1>
      <article>
        <section>
          <h2>Formuläret</h2>
          <form action="?action=select" method="POST">
            <input type="text" name="username" id="username" required placeholder="Ange användarnamn" oninvalid="this.setCustomValidity('Du måste ange ett användarnamn')" oninput="this.setCustomValidity('')" />

            <input type="text" name="first_name" placeholder="Ange ditt förnamn" required />

            <button type="submit" name="button" value="skicka">skicka</button>
          </form>
        </section>
        <section>
          <h2>Info</h2>
          <p>Här visar jag hur man ger användaren bättre information om vad som måste fyllas i. Detta går att förstärka med css/javascript så att man färgmarkerar en ruta som inte är ifylld. Jämför första och andra rutan för att se skillnaden på meddelandet som skrivs ut.</p>
          <p>Viktigt att <q>oninput</q> är med, annars <q>fastnar</q> det meddelandet på sidan.</p>
        </section>
      </article>
    </main>
  </body>

</html>

CSS

main {
  margin: 20px;
}

article {
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  justify-content: space-between;
  align-items: auto;
  align-content: start
}

section{
  flex: 0 0 auto;
  margin: 10px;
  width: 40vw;
}