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

Responsywny rozstaw ikon

Object Storage Arubacloud
0 głosów
515 wizyt
pytanie zadane 19 października 2019 w HTML i CSS przez zbignieFF Nowicjusz (140 p.)

Witam.

Na wstępie pewnie standardowy tekst:

"Z góry przepraszam, że może temat jest odgrzewany ale niestety nic nie znalazłem co by mnie naprowadziło na rozwiązanie"

Piszę właśnie własną stronę internetową.

Pośród różnych treści chcę aby w jednej linii umieszczone były trzy zdjęcia obok siebie i wyśrodkowane względem diva.

------------------------------------------------------------------------------

Zapis html:

<div class="ikony">
    
    <div class="qb1">
        <div class="ikonka1"><img src="1.png">opis1</div>
        </div>
    <div class="qb2">
        <div class="ikonka2"><img src="2.png">opis2</div>
        </div>
    <div class="qb3">
        <div class="ikonka3"><img src="3.png">opis3</div>
        </div>  
    
    <div style="clear: both"></div>


</div>

-------------------------------------------------------------------------------------

CSS

.ikony
{
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    font-size: 1.2em;
    color: white;
    line-height: 40px;  
}

.qb1
{
    max-width: 230px;
    display: inline-block;
    float: left;
    
}
.qb2
{
    max-width: 230px;
    display: inline-block;
}
.qb3
{
    max-width: 230px;
    display: inline-block;
    float: right;
}

----------------------------------------------------

Oczywiście nie twierdzę, że powyższy kod jest w 100% prawidłowy.

Problem polega jednak w momencie, kiedy chcę zmniejszyć stronę do rozdzielczości telefonu bo zaczyna ona przesuwać lub ucinać zdjęcia

Chciałbym, aby w momencie zejścia do szerokości 480px, zdjęcia automatycznie ułożyły się pionowo i wyśrodkowały względem nowej, mniejszej rozdzielczości.

Wiem, że jest możliwość poniższa:

@media only screen and (max-width: 480px)
{

}

Tylko nie wiem jak miałbym to zapisać. Próbowałem różnych zapisów ale bez skutku.

Może i zostanę zmieszany z błotem ale skupiam się na razie na obsłudze samego html i css.

JQuery, bootstrapy itp są nadal dla mnie czarną magią i prosiłbym o wsparcie w zakresie html/css.

Z góry dzięki!

1 odpowiedź

0 głosów
odpowiedź 19 października 2019 przez DawidK Nałogowiec (37,910 p.)

Coś takiego powinno zadziałać i zrealizować to co chcesz:

index.html

<!DOCTYPE html>
<html>
<head>
    <meta charset='utf-8'>
    <meta http-equiv='X-UA-Compatible' content='IE=edge'>
    <title>Ikony</title>
    <meta name='viewport' content='width=device-width, initial-scale=1'>
    <link rel='stylesheet' type='text/css' media='screen' href='main.css'>
</head>
<body>
    <div class="grid"> 
        <img class="img" src="coffe1.jpg">
        <img class="img" src="coffe2.jpg">
        <img class="img" src="coffe3.jpg"> 
    </div>
</body>
</html>

main.css

.img {
    height: 240px;
    width: 320px;
}

.grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    justify-items: center;
}

@media only screen and (max-width: 990px) {

    .grid {
        grid-template-columns: repeat(1, 1fr);
        gap: 1em;
    }
}

Tworzysz klasę grid z atrybutami:

display: grid (oznacza, że elementy wewnątrz są blokowe)

grid-template-columns: repeat(3, 1fr); (tworzysz siatkę z 3 kolumn gdzie każda ma 100% szerokości oznaczone jest to jako 1fr)

 justify-items: center; (oznacza, że elementy wewnątrz siatki będą wyśrodkowane względem kolumny)

Póżniej ustawiasz regułę media że dla ekranów i rozdzielczości mniejszej od np 990px siatka ma się zmienić na taką z jedną kolumną na całą szerokość

grid-template-columns: repeat(1, 1fr); podobnie jak powyżej 1fr oznacza 100% szerokości, możesz też dodać odctęp za pomocą gap

Wynik powinien być mniej więcej taki:

komentarz 19 października 2019 przez zbignieFF Nowicjusz (140 p.)
Szczerze, dzięki Ci wielkie za pomoc!

Znacznie mnie to przybliżyło do celu :-)

Podobne pytania

0 głosów
4 odpowiedzi 960 wizyt
0 głosów
1 odpowiedź 270 wizyt
pytanie zadane 27 maja 2019 w HTML i CSS przez Apper97 Obywatel (1,380 p.)
–2 głosów
2 odpowiedzi 1,974 wizyt
pytanie zadane 31 marca 2019 w HTML i CSS przez aro Nowicjusz (150 p.)

92,580 zapytań

141,432 odpowiedzi

319,665 komentarzy

61,965 pasjonatów

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.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...