Pytanie totalne noob, ale tutaj.
CSS
.product__specfield_8_arrow {
/*background-image:url(../../upload/orng_bg_arrow.png);
background-repeat:no-repeat;*/
background-color:#fc0;
width:50px !important;
height:33px !important;
border: 1px solid #dddddd;
border-left:none;
border-radius:5px;
-moz-border-radius:5px;
-webkit-border-radius:5px;
border-bottom-left-radius:0px;
border-top-left-radius:0px;
-moz-border-radius-bottomleft:0px;
-moz-border-radius-topleft:0px;
-webkit-border-bottom-left-radius:0px;
-webkit-border-top-left-radius:0px;
margin:0;
padding:2px;
cursor:pointer;
}
HTML
<span class="product__specfield_8_arrow"> </span>
Zasadniczo próbuję emulować przycisk, aby rozpiętość (lub coś takiego) wyglądała jak przycisk obok pola wprowadzania, które tak naprawdę nie musi być jednym z powodu generatora automatycznego wypełniania, który generuje błędy na wejściu. Pomyślałem, że to na razie szybkie rozwiązanie, ale oczywiście nie.
Dzięki.
Odpowiedzi:
Rozpiętość jest elementem wbudowanym. Nie ma szerokości ani wysokości.
Możesz przekształcić go w element na poziomie bloku, a następnie zaakceptuje on twoje dyrektywy wymiarowe.
źródło
display: block
jest określony, rozpiętość przestaje być elementem wbudowanym, a element pojawia się po pojawieniu się w następnym wierszu. Potrzebuję elementu, który jest wbudowany, ale może mieć pożądaną szerokość.Spróbuj użyć
div
zamiastspan
lub za pomocą CSSdisplay: block;
lubdisplay: inline-block;
-span
jest domyślnie elementem wbudowanym, którego nie można pobraćwidth
iheight
właściwości.źródło
Zainspirowany przez @Hamed, dodałem następujące i zadziałało to dla mnie:
źródło
Rozpiętość przyjmuje szerokość i wysokość tylko wtedy, gdy zrobimy z niej element blokowy.
źródło
display: inline-block;
jest lepiejZgodnie z komentarzem @Paul, jeśli określono display: block, span przestaje być elementem wbudowanym, a element pojawia się po pojawieniu się w następnym wierszu.
Przybyłem tutaj, aby znaleźć rozwiązanie mojego problemu z wysokością przęsła, i mam własne rozwiązanie
Dodanie go
overflow:hidden;
i wstawienie go rozwiąże problem właśnie przetestowany w trybie dziwactwa IE8źródło
overflow:hidden;
w tym kontekście. „Treść jest obcinana, bez pasków przewijania”, mówi MDN . Wydaje się sprzeczne z intuicją. Co on tu robi?span
s są domyślnie wyświetlane w linii, co oznacza, że nie mają wysokości i szerokości.Spróbuj dodać a
display: block
do swojego zakresu.źródło
Rozpiętość zaczyna się jako element wbudowany. Możesz na przykład zmienić jego atrybut wyświetlania na blok, a atrybuty wysokości / szerokości zaczną obowiązywać.
źródło
span {display:block;}
dodaje również podział linii.Aby tego uniknąć, użyj,
span {display:inline-block;}
a następnie możesz dodać szerokość i wysokość do elementu wbudowanego, a także możesz wyrównać go w bloku:więcej tutaj
źródło