• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Jak zmienić kolor ikony używanej jako slider-thumb (CSS)

Aruba Cloud VPS - 50% taniej przez 3 miesiące!
+1 głos
977 wizyt
pytanie zadane 20 stycznia 2021 w HTML i CSS przez Mlorism Użytkownik (580 p.)
edycja 20 stycznia 2021 przez Mlorism

Modyfikuję slidera i udało mi się nawet zmienić ikonę (format svg), którą chwytamy do zmiany wartości (slider-thumb). Używana ikona jest czarna i chciałbym zmienić jej kolor na inny (w zależności od slidera, np. czerwony, niebieski).

To co do tej pory ogarnąłem w css:

input[type=range]::-webkit-slider-thumb 
{
    -webkit-appearance: none;
    width: 25px;
    height: 25px;    
    background: url('../img/shield.svg');    
    cursor: pointer;
}

Niestety nie mogę zmienić tego koloru poprzez background-color bo zmieni się tylko obramowanie czarnej ikony, a ona pozostaje (tak, zgadłeś) czarna. Czy jest to w ogóle możliwe?

komentarz 20 stycznia 2021 przez SzkolnyAdmin Szeryf (89,030 p.)
Chesz zmienić jednorazowo, czy np. za każdym wyświetleniem?

Inkscape poradzi sobie z plikiem SVG.
komentarz 20 stycznia 2021 przez Mlorism Użytkownik (580 p.)
Chciałem zmieniać kolor w różnych miejscach na stronie, więc z wyświetleniem. Zastanawiam się czy jest to możliwe w CSS, a jak nie w javascriptcie, czy jednak trzeba przygotować kilka wariantów kolorystycznych w oddzielnych plikach?

3 odpowiedzi

+1 głos
odpowiedź 20 stycznia 2021 przez SzkolnyAdmin Szeryf (89,030 p.)
wybrane 24 stycznia 2021 przez Mlorism
 
Najlepsza

W sumie to nawet notatnik ci pomoże, plik svg to zwyczajny plik XML. Jak napisał niezalogowany, szukaj ciągu fill:#000000 lub fill="black" (lub podobnie, zapis oznacza kolor czarny) w pliku i zmień kod/nazwę koloru. Jeżeli ikona składa się z kilku części, ciąg może wystąpić kilka razy.

Program do obróbki grafiki wektorowej (np. darmowy Inkscape) poradzi sobie ze zmianą koloru.

Jeżeli chciałbyś zmieniać kolor kolor JEDNEJ ikony podczas pokazu slajdów, to musiałbyś edytować plik w trakcie działania aplikacji (np. przy pomocy PHP), ale lepiej przygotować kilka gotowych ikon. Chyba, że user sam może zmieniać kolor ikony.

komentarz 20 stycznia 2021 przez Mlorism Użytkownik (580 p.)
Moje pliki nie mają ani fill, ani black, ani ciągu kilku zer. Inkscape daje radę by je zamienić. Zastanawia mnie czy istnieje sposób by zmieniać to przez CSS lub javascript? Od tego zależy czy przygotować muszę kilka wersji kolorystycznych w oddzielnych plikach, czy nie.
komentarz 20 stycznia 2021 przez SzkolnyAdmin Szeryf (89,030 p.)
Przygotowane w innym programie. Otwórz je w Inkscapie i zapisz (będziesz miał fill).

Z tego co wiem, to ani CSS, ani JS ci na to nie poradzi. Brak możliwości edycji pliku, ale niech się wypowiedzą specjaliści. Z języków webowych, to, np. PHP - odczyt pliku, wyszukanie i zmiana frazy dotyczącej koloru, zapis pliku po zmianach. Ale IMO lepiej przygotować kilka wersji kolorystycznych, zwłaszcza, że waga plików jest śmieszna (jak to wektorowych).

Jeżeli - jak ci pisałem - user mógłby personalizować kolor ikon i wybierać przy tym kolor dowolny (nie z oferowanych gotowych od ciebie), to pozostaje edycja pliku.
0 głosów
odpowiedź 20 stycznia 2021 przez niezalogowany

Visual Studio Code

pobierz extension SVG PREVIEVER  zrestartuj edytor !

Otówrz wybrany svg w edytorze i zmień atrybut Fill na wybrany kolor w formacie #FFF;

Done smiley jeśli SVG nie jest skomplikowany to powinno się spokojnie udać!

0 głosów
odpowiedź 21 stycznia 2021 przez VBService Ekspert (256,320 p.)
edycja 21 stycznia 2021 przez VBService

Może nie do końca w temacie, inne "spojrzenie" wink

Change Color of SVG on Hover

CSS Style Generator for Range Inputs
SVG to Base64 wink

<input type="range" min="1" max="30" steps="1" value="2" class="slider">   
<input type="range" min="1" max="30" steps="1" value="2" class="slider c1">
.slider {
  -webkit-appearance: none;
  appearance: none;
  width: 20vw;
  height: 0.5em;
  background: #ccc;
  outline: none;
  opacity: 0.7;
  -webkit-transition: .2s;
  transition: opacity .2s;
  cursor: pointer;
  overflow: unset;
  border-radius: 10px;
}
.slider::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 15px;
  height: 15px;
  background: #4CAF50;
  cursor: pointer;
}

.c1::-webkit-slider-thumb 
{
  -webkit-appearance: none;
  width: 25px;
  height: 25px;    
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxyZWN0IHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InJlZCIvPjwvc3ZnPg==");   
  cursor: pointer;
}

 

Podobne pytania

0 głosów
1 odpowiedź 662 wizyt
pytanie zadane 12 września 2019 w HTML i CSS przez MAXIM7 Obywatel (1,990 p.)
0 głosów
3 odpowiedzi 804 wizyt
pytanie zadane 6 czerwca 2019 w HTML i CSS przez Moras Obywatel (1,620 p.)
+1 głos
1 odpowiedź 242 wizyt
pytanie zadane 9 marca 2018 w C i C++ przez Hiskiel Pasjonat (22,830 p.)

93,164 zapytań

142,176 odpowiedzi

321,939 komentarzy

62,493 pasjonatów

Advent of Code 2024

Top 15 użytkowników

  1. 688p. - dia-Chann
  2. 676p. - CC PL
  3. 675p. - Łukasz Piwowar
  4. 664p. - Marcin Putra
  5. 662p. - Łukasz Eckert
  6. 649p. - Michal Drewniak
  7. 641p. - rucin93
  8. 641p. - rafalszastok
  9. 629p. - Piotr Aleksandrowicz
  10. 621p. - Dawid128
  11. 606p. - Mariusz Fornal
  12. 602p. - Michał Telesz
  13. 597p. - Hubert Chęciński
  14. 572p. - ssynowiec
  15. 527p. - Adrian Wieprzkowicz
Szczegóły i pełne wyniki

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Wprowadzenie do ITsec, tom 1 Wprowadzenie do ITsec, tom 2

Można już zamawiać dwa tomy książek o ITsec pt. "Wprowadzenie do bezpieczeństwa IT" - mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy aż 15% zniżki! Dziękujemy ekipie Sekuraka za fajny rabat dla naszej Społeczności!

...