Hallo zusammen,
ich habe mein erstes HTML Formular mit Bootstrap fertig gestellt. Es ist responsive und es klappt wirklich so gut wie alles. Habe mir online TuT von SelfHTML durchgelesen und probiert.
Im Formular kann bewertet werden, wenn der User eine Bewertung (Radio-Button) anklickt, springt die Seite automatisch an den Seitenanfang, natürlich nur, wenn die Seite nicht auf eine Seite passt. Auf dem Handy passiert das nicht, nur wenn ich Chrome so klein schiebe, dass gescrollt werden muss.
Die Bewertung ist mit CSS als Star dargestellt... hier mal mein Code für eine Bewertung
<form class="form">
<div class="form-row">
<div class="col-12 blockheader">
<span>Wie bewerten Sie uns?</span>
</div>
</div>
<div class="form-row">
<div class="col-12">
<div class="form-row">
<div class="col-12 col-sm-12 col-md-3">
<label for="bd">Bewertung</label>
</div>
<div class="col-12 col-sm-12 col-md-9" id="bd">
<div class="rating" style="vertical-align: top;">
<input type="radio" id="star1bd" name="ratingbd" value="1" /><label for="star1bd" title="Sehr gut!">1</label>
<input type="radio" id="star2bd" name="ratingbd" value="2" /><label for="star2bd" title="Gut!">2</label>
<input type="radio" id="star3bd" name="ratingbd" value="3" /><label for="star3bd" title="Befriedigend">3</label>
<input type="radio" id="star4bd" name="ratingbd" value="4" /><label for="star4bd" title="Ausreichend">4</label>
<input type="radio" id="star5bd" name="ratingbd" value="5" /><label for="star5bd" title="Mangelhaft">5</label>
<input type="radio" id="star6bd" name="ratingbd" value="6" /><label for="star6bd" title="Ungenügend">6</label>
</div>
</div>
</div>
</div>
</div>
</form>
Alles anzeigen
Den header habe ich weggelassen, hier aber noch das CSS für das rating:
<style>
body {
background-color: #E4E8F1;
font-family: 'Exo 2', sans-serif;
}
.selectfields {
background-color: #9FA2A9;
color: #fff;
font-weight: bold;
border-color: #fff;
border-style: solid;
border-width: 1px;
}
.selectfields:focus {
background-color: #9FA2A9;
color: #fff;
font-weight: bold;
border-color: #fff;
border-style: solid;
border-width: 1px;
}
h1{
color: #004088;
font-weight: bold;
}
label {
font-weight: bold;
}
.buttondremo {
color: #FFFFFF;
font-weight: bold;
border-width: 0px 0px 6px 0px;
border-color: #013773;
border-style: solid;
border-radius: 0px;
background-color: #1f508a;
background-image: none;
cursor: pointer;
}
.buttondremo:hover {
color: #FFFFFF;
font-weight: bold;
border-width: 0px 0px 6px 0px;
border-color: #013773;
border-style: solid;
border-radius: 0px;
background-color: #ef7900;
background-image: none;
cursor: pointer;
}
.footerstyle {
border-style: solid;
border-width: 2px 0px 0px 0px;
border-color: #fff;
font-weight: bold;
}
.buttonsmall {
display:flex;
justify-content: space-around;
}
.blockheader {
background-color: #6E92BB;
font-weight: bold;
border-width: 1px;
border-color: #000;
border-style: solid;
border-radius: 0px;
background-image: none;
padding: 4px;
margin-bottom: 10px;
margin-top: 10px
}
.rating {
float:left;
}
/* :not(:checked) is a filter, so that browsers that don't support :checked don't
follow these rules. Every browser that supports :checked also supports :not(), so
it doesn't make the test unnecessarily selective */
.rating:not(:checked) > input {
position:absolute;
top:-9999px;
clip:rect(0,0,0,0);
}
.rating:not(:checked) > label {
float:right;
width:1.0em;
/* padding:0 .1em; */
overflow:hidden;
white-space:nowrap;
cursor:pointer;
font-size:150%;
/* line-height:1.2; */
color:#9FA2A9;
}
.rating:not(:checked) > label:before {
content: '★ ';
}
.rating > input:checked ~ label {
color: #ef7900;
}
.rating:not(:checked) > label:hover,
.rating:not(:checked) > label:hover ~ label {
color: #ef7900;
}
.rating > input:checked + label:hover,
.rating > input:checked + label:hover ~ label,
.rating > input:checked ~ label:hover,
.rating > input:checked ~ label:hover ~ label,
.rating > label:hover ~ input:checked ~ label {
color: #ef7900;
}
.rating > label:active {
position:relative;
top:0px;
left:0px;
}
</style>
Alles anzeigen
Kann jemand mir erklären, warum er nach oben springt? Und wenn ja, warum nicht auf dem iPhone sondern nur auf der Desktop-Variante?
Vielen Dank,
Erik