28172 sujets

CSS et mise en forme, CSS3

Bonjour, j'aimerais faire la rotation d'un SVG. Pour cela j'ai utilisé différentes méthodes, mais chacune impacte mes input et mon bouton. La rotation s'exécute mais je ne peux plus réagir avec mes objets. Existe t-il une solution ?
Je vous laisse mon HTML et mon CSS ci dessous. Merci d'avance.


    <div id="clock_command">
        <div id="clock_input">
            <input type="number" id="hours" name="hours" min="0" max="99" value="0">
            <input type="number" id="minutes" name="minutes" min="0" max="60" value="0">
            <input type="number" id="seconds" name="seconds" min="0" max="60" value="0">
        </div>
        <div id="clock_button">
            <button type="button" onclick="app()">Valider</button>
        </div>

    </div>

    <div id="clock_display">
        <svg>
            <circle cx="300px" cy="300px" r="280"></circle>
        </svg>
        <h3></h3>
    </div>



* {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen,
    Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif;
  padding: 0;
  margin: 0;
}

body {
  background-color: rgb(43, 43, 43);
  display: flex;
  justify-content: center;
  align-items: center;
}

#clock_command {
  position: absolute;
}

input {
  height: 50px;
  width: 50px;
  border: none;
  border-radius: 10px;
  font-size: 1.5rem;
  padding: 0 5px 0 25px;
}

#clock_button {
  position: relative;
  text-align: center;
  top: 100px;
}

button {
  width: 120px;
  border: none;
  border-radius: 10px;
  font-size: 1.5rem;
  padding: 10px;
}

#clock_display {
  height: 100vh;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}

svg {
  height: 600px;
  width: 600px;
  display: flex;
  justify-content: center;
  align-items: center;
  transform: rotate(270deg);
}

circle {
  fill: none;
  stroke: rgb(255, 59, 86);
  stroke-width: 15px;
  stroke-dasharray: 1600;
  stroke-dashoffset: 0;
  stroke-linecap: round;
}
Modérateur
Et l'eau,

Si tu ne veux pas qu'il y ait d'impact, ton élément doit être hors flux Smiley cligne
J'ai bien essayé de mettre ma balise svg en position absolute pur la sortir du flux, mais les inputs restent inaccessibles. Existe t-il une autre solution ?
Modérateur
Bonjour,

Il faut rajouter dans ton css :
svg {pointer-events:none;}

Ça permet aux clics de "passer au travers" de ton svg qui est actuellement dessiné par dessus tes inputs.

Amicalement,
Modifié par parsimonhi (23 Feb 2022 - 15:35)
Meilleure solution