Wyniki egzaminu

Informacje o egzaminie:
  • Zawód: Technik informatyk
  • Kwalifikacja: INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych
  • Data rozpoczęcia: 8 czerwca 2026 15:27
  • Data zakończenia: 8 czerwca 2026 15:44

Egzamin niezdany

Wynik: 18/40 punktów (45,0%)

Wymagane minimum: 20 punktów (50%)

Nowe
Analiza przebiegu egzaminu- sprawdź jak rozwiązywałeś pytania
Udostępnij swój wynik
Szczegółowe wyniki:
Pytanie 1

Funkcja pg_connect w języku PHP służy do nawiązania połączenia z bazą danych

A. MS SQL
B. MS ACCESS
C. mySQL
D. PostgreSQL
Wszystkie inne odpowiedzi dotyczą baz danych, które nie są obsługiwane przez funkcję pg_connect. Użycie MS SQL, MS ACCESS lub mySQL w kontekście pg_connect wprowadza w błąd, ponieważ każda z tych technologii ma swoje własne metody połączenia. MS SQL, na przykład, jest systemem zarządzania bazą danych stworzonym przez Microsoft i do połączeń z tą bazą używa się funkcji syb_connect lub PDO w zależności od preferencji programisty. MS ACCESS, z kolei, jest bazą danych, która często jest wykorzystywana w mniejszych aplikacjach i wymaga innych podejść do połączeń, często przy użyciu ODBC lub DAO. MySQL, popularna baza danych open source, używa funkcji mysqli_connect lub PDO_MySQL. Typowe błędy myślowe prowadzące do nieprawidłowych odpowiedzi często wynikają z nieznajomości specyfiki i architektury różnych systemów baz danych oraz błędnego utożsamiania ich z funkcjami PHP. Każde z tych rozwiązań ma swoje unikalne cechy i różnice, które są istotne dla projektowania aplikacji oraz ich późniejszego rozwoju.

Pytanie 2

W CSS wprowadzono formatowanie

p > i {color: blue} 

Co oznacza, że tekst zapisany będzie w kolorze niebieskim

A. pochylony tekst akapitu
B. cały tekst akapitu bez względu na jego formatowanie
C. pogrubiony tekst akapitu
D. cały tekst nagłówków bez względu na ich formatowanie
W podanym przypadku, zapis CSS <code>p > i {color: blue}</code> odnosi się do selektora, który aplikuje kolor niebieski do elementu <code><i></code> znajdującego się bezpośrednio wewnątrz elementu <code><p></code>. Oznacza to, że tylko tekst, który jest otoczony znacznikiem <code><i></code> w danym paragrafie, zostanie wyróżniony kolorem niebieskim. Ten sposób selekcji jest zgodny z zasadą kaskadowości i specyficzności CSS, co jest kluczowym elementem w zarządzaniu stylem dokumentów HTML. W praktyce, używanie takich selektorów pozwala na precyzyjne formatowanie tekstu w obrębie większych struktur, co jest szczególnie ważne w skomplikowanych projektach webowych. Dobrym przykładem zastosowania tego stylu może być sytuacja, gdy chcemy wyróżnić cytaty lub słowa kluczowe w tekście paragrafu, stosując odpowiednie znaczniki HTML oraz style CSS, co zwiększa czytelność i estetykę treści.

Pytanie 3

Określ właściwą sekwencję stylów CSS, biorąc pod uwagę ich priorytet w formatowaniu elementów strony WWW?

A. Rozciąganie stylu, Styl zewnętrzny, Styl lokalny
B. Styl lokalny, Styl wewnętrzny, Styl zewnętrzny
C. Styl wewnętrzny, Styl zewnętrzny, Rozciąganie stylu
D. Styl zewnętrzny, Wydzielone bloki, Styl lokalny
Wskazana odpowiedź, czyli Lokalny, Wewnętrzny, Zewnętrzny, jest zgodna z zasadami kaskadowego stylu arkuszy CSS. Istotą kaskadowości jest to, że style są stosowane według określonej hierarchii. Style lokalne (wbudowane) mają najwyższy priorytet, co oznacza, że jeśli na danym elemencie zastosowano styl lokalny, to zdominuje on wszelkie inne style. Przykład użycia stylu lokalnego to nadanie koloru tła dla konkretnego przycisku poprzez atrybut 'style': <button style='background-color: red;'>Przycisk</button>. W przypadku, gdy nie ma stylu lokalnego, przetwarzany jest styl wewnętrzny, który można zdefiniować w sekcji <style> w nagłówku dokumentu HTML. Na przykład: <style>p { color: blue; }</style> sprawi, że wszystkie akapity będą miały niebieski kolor. Dopiero na końcu brane są pod uwagę style zewnętrzne, które są definiowane w osobnych plikach CSS, na przykład: <link rel='stylesheet' href='style.css'>. Dlatego znajomość tej hierarchii jest kluczowa dla skutecznego tworzenia stylów, co przekłada się na lepsze zarządzanie wyglądem strony oraz unikanie konfliktów stylów. Warto również pamiętać o zasadzie „specyficzności”, która dodatkowo komplikuje temat, ponieważ style mogą mieć różny priorytet w zależności od ich specyfikacji.

Pytanie 4

Aby w JavaScript wykonać wymienione kroki:

1. Wyświetlić okno do wpisania wartości z poleceniem "Podaj kwalifikację: ",
   następnie po zatwierdzeniu
2. Umieścić napis na stronie internetowej, gdzie w miejscu kropek znajduje się
   wartość pobrana z okna "Kwalifikacja: ..."
należy w znaczniku <script> umieścić kod
A. A = prompt("Podaj kwalifikację: ");
   document.write("Kwalifikacja: " + A);

B. A = prompt("Podaj kwalifikację: ");
   document.write("Kwalifikacja: " .A);

C. A = alert("Podaj kwalifikację: ");
   document.write("Kwalifikacja: " + A);

D. A << prompt("Podaj kwalifikację: ");
   document.write("Kwalifikacja: " + A);
A. C.
B. A.
C. D.
D. B.
Wygląda na to, że nie do końca trafiłeś. Niektóre odpowiedzi sugerowały użycie funkcji, które nie nadają się do tego zadania. Na przykład, `alert` pokazuje tylko jakiś komunikat, ale nie pozwala na wpisanie czegoś przez użytkownika. Inną możliwością mogły być też metody manipulacji DOM, ale to już trochę bardziej skomplikowane i nie było w tym przypadku konieczne. Ważne jest, żeby wiedzieć, które funkcje w JavaScript są do czego, żeby móc je dobrze wykorzystać.

Pytanie 5

Które z pól edycyjnych zostało przedstawione w opisanym stylu, zakładając, że pozostałe atrybuty pola mają wartości domyślne, a użytkownik wpisał imię Krzysztof w przeglądarce?

Ilustracja do pytania
A. Pole 4
B. Pole 2
C. Pole 3
D. Pole 1
Dobrze, że dopasowałeś Pole 2 do stylu z kodu CSS. Widać, że dobrze ogarniasz te rzeczy! Ten padding 10px, co dałeś, naprawdę robi różnicę. Dzięki temu tekst ma więcej przestrzeni wokół siebie. A kolor tła Teal? Super wybór, bo to taki fajny pośredni odcień między niebieskim a zielonym. Biały tekst na tym tle jest świetnie widoczny, co jest mega ważne. No i brak obramowania, czyli border none, dodaje nowoczesności! Zaokrąglenie krawędzi, które ustawiłeś na 7px, sprawia, że pole wygląda przyjemniej. Takie rzeczy są często stosowane, by przygotować interfejsy, które są estetyczne i funkcjonalne. Jak projektujesz, pamiętaj o kontrastach, bo to naprawdę podnosi jakość aplikacji. Troska o estetykę i użyteczność to kluczowa sprawa. Dobra robota!

Pytanie 6

Według zasad walidacji HTML5, jakie jest prawidłowe użycie znacznika hr?

A. &lt;hr&gt;
B. &lt;/ hr /&gt;
C. &lt;/ hr&gt;
D. &lt;/hr?&gt;
Wszystkie inne odpowiedzi dotyczące znacznika <hr> są błędne, i to z kilku powodów. Po pierwsze, odpowiedź &lt;/ hr&gt; sugeruje, że <hr> potrzebuje zamknięcia, co nie jest zgodne z zasadami HTML5. Znaczniki samodzielne, jak <hr>, nie mają zamykających wersji, bo to właśnie ich urok. Następnie, &lt;/hr?&gt; ma ten dziwny znak zapytania, co sprawia, że trudno to rozczytać. Tego typu znaki nie mogą być w nazwach znaczników, więc przeglądarki się w tym gubią. I jeszcze inna odpowiedź, &lt;/ hr /&gt;, wraca do starych wersji HTML, gdzie można było takie rzeczy robić, ale teraz to nie ma sensu. Niepoprawne znaczniki mogą sprawić, że strona będzie działać dziwnie, a to nie jest fajne dla użytkowników. Lepiej trzymać się aktualnych zasad, żeby wszystko działało jak należy.

Pytanie 7

Jaką wartość zwróci poniższa instrukcja w JavaScript?

document.write(5==='5');
A. true
B. 1
C. 0
D. false
W przypadku użycia operatora porównania w JavaScript ważne jest zrozumienie różnic między operatorem podwójnego równości == a potrójnego równości ===. Operator == porównuje wartości po niejawnej konwersji typów danych co prowadzi do błędów gdy nie są one jednoznaczne. Przykładowo liczba 5 porównana z ciągiem '5' używając == może dać wartość true ponieważ konwertuje typy do jednego wspólnego formatu przed porównaniem. Jednak takie podejście jest ryzykowne i niezalecane w profesjonalnym programowaniu gdyż nie zapewnia pełnej zgodności typów. Operator === przeciwnie sprawdza zarówno typ danych jak i wartość co eliminuje problemy z nieoczekiwanymi konwersjami. W przedstawionym przykładzie porównanie liczby 5 z ciągiem '5' za pomocą === zwraca false ponieważ typy danych nie są zgodne. Niepoprawne zrozumienie tego mechanizmu może prowadzić do błędnych wniosków takich jak wyświetlenie wartości true lub 1 co jest nieprawidłowe. Zrozumienie różnic w działaniu tych operatorów jest kluczowe dla każdego programisty JavaScript aby unikać typowych błędów związanych z niejawnością konwersji typów i zapewniać większą przewidywalność i niezawodność kodu produkcyjnego. Takie podejście jest zgodne z dobrymi praktykami w branży co przyczynia się do poprawy jakości kodu i jego długoterminowej konserwacji. Użycie === jest rekomendowane w celu zapewnienia pełnej zgodności typów i wartości co jest kluczowe w profesjonalnym środowisku programowania webowego. Przyzwyczajenie się do stosowania potrójnego równości zmniejsza ryzyko błędów logicznych i wspiera dobre praktyki programistyczne.

Pytanie 8

Jaką integralność określa przytoczona definicja?

Ilustracja do pytania
A. Referencyjną
B. Semantyczną
C. Statyczną
D. Encji
Integralność encji odnosi się do unikalności danych w tabeli poprzez klucze główne. Jest to fundamentalna koncepcja w relacyjnych bazach danych polegająca na tym że każda encja czyli rekord w tabeli musi być jednoznacznie identyfikowalna. Klucz główny zapewnia tę unikalność co jest niezależne od relacji między tabelami opisywanych przez integralność referencyjną. Pojęcie integralności statycznej odnosi się do stanu danych który nie zmienia się w czasie co nie jest bezpośrednio związane z relacjami pomiędzy tabelami. Integralność statyczna może odnosić się do historycznych danych lub archiwów gdzie dane muszą pozostać niezmienne po ich zarejestrowaniu. Podczas gdy integralność referencyjna dotyczy dynamicznych relacji między różnymi zestawami danych integralność statyczna wiąże się z zachowaniem niezmienności danych w obrębie pojedynczego zbioru. Integralność semantyczna odnosi się natomiast do znaczenia i logiki biznesowej danych. Chodzi o zapewnienie że dane w bazie są zgodne z regułami i założeniami biznesowymi. Na przykład data urodzenia nie może być późniejsza niż data zatrudnienia. Chociaż integralność semantyczna jest ważna dla poprawności danych z punktu widzenia aplikacji biznesowej nie opisuje ona relacji między tabelami w taki sposób jak integralność referencyjna. Właściwe rozumienie tych różnych koncepcji jest kluczowe dla projektowania i utrzymania spójnych i niezawodnych systemów baz danych.

Pytanie 9

W jaki sposób lokalny System Zarządzania Bazą Danych (SZBD) udostępnia bazę?

A. wyłącznie na jednym, wyznaczonym komputerze
B. jako serwer w sieci
C. w chmurze obliczeniowej
D. jako usługę serwerową w sieci
Udostępnianie bazy w sieci, jako usługi serwerowej czy w chmurze to cechy SZBD SIECIOWEGO lub serwerowego, a nie lokalnego. Lokalny system zarządzania bazą działa wyłącznie na jednym komputerze.

Pytanie 10

Wskaż polecenie, które zostało opisane w ramce.

Dla każdego przebiegu pętli aktualna wartość elementu tablicy jest przypisywana do zmiennej, a wskaźnik tablicy jest przesuwany o jeden, aż do osiągnięcia ostatniego elementu tablicy
A. for
B. foreach
C. while
D. next
Pętla 'for' wymaga jawnego zarządzania indeksem i często jest stosowana, gdy potrzebujemy precyzyjnej kontroli nad iteracją, na przykład gdy musimy modyfikować indeks lub iterować w niestandardowy sposób. W przeciwieństwie do 'foreach', pętla 'for' nie zajmuje się automatycznym przypisywaniem elementów tablicy do zmiennych, co czyni ją mniej odpowiednią w kontekście opisanym w pytaniu. Instrukcja 'next' nie jest typową konstrukcją w najpopularniejszych językach programowania i może być myląca, ponieważ czasami jest używana w kontekście pętli w VBA lub jako element iteracyjny w innych, mniej popularnych językach. Natomiast pętla 'while' służy do wykonywania iteracji dopóki spełniony jest określony warunek logiczny, co nie jest zgodne z opisaną funkcjonalnością, w której pętla ma automatycznie przypisywać wartość elementów tablicy do zmiennej. Zrozumienie różnic między tymi strukturami pomaga w wyborze odpowiedniego narzędzia do zadania, zwiększając efektywność i czytelność kodu.

Pytanie 11

Którą czynność gwarantującą poprawne wykonanie przedstawionego kodu JavaScript należy wykonać przed pętlą?

var text;
for(var i=0; i<tab.length; i++ ){
    text+=tab[i] + "<br>";
}
A. Sprawdzić długość tablicy tab
B. Upewnić się, że text jest typu string
C. Zadeklarować zmienną i
D. Zainicjować zmienną text
Zadeklarowanie zmiennej 'i' przed pętlą nie jest konieczne, ponieważ JavaScript automatycznie deklaruje zmienną 'i' w kontekście pętli. Deklaracja zmiennych przy pomocy 'var', 'let' lub 'const' jest wystarczająca w momencie ich użycia w pętli. Kolejnym aspektem jest sprawdzenie rozmiaru tablicy 'tab'. Choć podjęcie takiego sprawdzenia jest dobrym zwyczajem, nie jest to warunek konieczny do poprawnego działania kodu. Pętla for działa w oparciu o długość tablicy, więc jeżeli tablica jest pusta, pętla po prostu się nie wykona, co nie prowadzi do błędów. Ostatnim punktem jest sprawdzenie, czy 'text' jest typu znakowego. JavaScript jest językiem dynamicznie typowanym, co oznacza, że zmienne mogą przyjmować różne typy danych w trakcie działania programu. Na początku 'text' powinno być inicjalizowane jako pusty łańcuch, ale sprawdzanie jego typu w momencie, gdy jest używane w pętli, nie jest konieczne. Wszystkie powyższe odpowiedzi mogą być postrzegane jako dobre praktyki, ale nie są kluczowymi krokami, które należy wykonać przed rozpoczęciem pętli, aby program działał poprawnie.

Pytanie 12

Wskaż styl CSS za pomocą którego został uzyskany przedstawiony efekt.

  • psy
  • koty
  • chomiki
  • świnki morskie
  • rybki
A. ul li:hover { background-color: DodgerBlue; }
B. ul li:nth-child(even) { background-color: DodgerBlue; }
C. ul li:nth-child(odd) { background-color: DodgerBlue; }
D. ul li:active { background-color: DodgerBlue; }
Wybrane przez Ciebie odpowiedzi są nieprawidłowe. Zacznijmy od selektora CSS 'ul li:active { background-color: DodgerBlue; }' - aktywny stan elementu to moment, kiedy jest on aktualnie klikany, co nie pasuje do obserwowanego efektu. Następnie 'ul li:nth-child(odd) { background-color: DodgerBlue; }' - ten selektor odnosi się do nieparzystych elementów listy, podczas gdy na obrazku parzyste elementy mają niebieskie tło. Na koniec 'ul li:hover { background-color: DodgerBlue; }' - pseudoklasa :hover odnosi się do stanu, kiedy kursor myszy jest nad elementem, co również nie jest zgodne z efektem na obrazku. Wybór nieodpowiedniej pseudoklasy sugeruje, że nie zrozumiałeś do końca ich zastosowania w CSS. Jest to typowy błąd, który można naprawić przez dokładniejsze zapoznanie się z tym aspektem języka CSS, konkretnie z różnymi pseudoklasami i ich zastosowaniem.

Pytanie 13

Na czym polega parkowanie domeny?

A. na zmianie właściciela domeny (cesji)
B. na dodaniu rekordu CNAME (aliasu) dla domeny
C. na zakupie (rejestracji) nowej domeny
D. na utworzeniu strefy DNS domeny i wskazaniu serwerów nazw
Parkowanie domeny to skonfigurowanie zarejestrowanej domeny po stronie DNS - utworzenie jej strefy i wskazanie serwerów nazw (nameserwerów) - zwykle bez uruchamiania pełnej, docelowej witryny. Często domena „zaparkowana” kieruje na stronę zastępczą lub jest po prostu przygotowana do późniejszego użycia. Dzięki temu domena działa w systemie DNS, choć nie hostuje jeszcze właściwego serwisu. Dlatego parkowanie polega na utworzeniu strefy DNS i wskazaniu serwerów nazw.

Pytanie 14

Aby zaimportować plik z danymi SQL do bazy danych MySQL, można użyć narzędzia:

A. FileZilla
B. Symfony 3
C. phpMyAdmin
D. TotalCommander
phpMyAdmin to popularne, dostępne przez przeglądarkę narzędzie do administrowania bazą MySQL/MariaDB. Pozwala tworzyć bazy i tabele, przeglądać i edytować dane, wykonywać zapytania SQL, a także eksportować i importować dane. Import pliku .sql sprowadza się do wybrania bazy, zakładki Import i wskazania pliku - phpMyAdmin wykona zawarte w nim polecenia. Dlatego to właśnie phpMyAdmin służy do zaimportowania pliku z danymi SQL.

Pytanie 15

Który zapis to poprawna definicja funkcji w JavaScript?

A.
typ_funkcji nazwa_funkcji(argumenty) { instrukcje; }
B.
nazwa_funkcji(argumenty) { instrukcje; }
C.
function nazwa_funkcji(argumenty) { instrukcje; }
D.
new nazwa_funkcji(argumenty) { instrukcje; }
Bez słowa function (lub składni funkcji strzałkowej) to nie jest definicja - sam nazwa_funkcji(argumenty){...} wygląda jak wywołanie. new tworzy obiekty, a JavaScript nie deklaruje funkcji przez „typ zwracany” jak C++. Poprawna definicja to function nazwa_funkcji(argumenty) { instrukcje; }.

Pytanie 16

W CSS określono stylizację dla paragrafu, która nada mu następujące właściwości:

Ilustracja do pytania
A. tło niebieskie, kolor tekstu czerwony, marginesy wewnętrzne ustawione na wartość 40 px
B. tło czerwone, kolor tekstu niebieski, marginesy wewnętrzne ustawione na wartość 40 px
C. tło czerwone, kolor tekstu niebieski, marginesy zewnętrzne ustawione na wartość 40 px
D. tło niebieskie, kolor tekstu czerwony, marginesy zewnętrzne ustawione na wartość 40 px
W CSS stylizacja elementów HTML jest kluczowa dla tworzenia estetycznych i funkcjonalnych stron internetowych W przypadku tego pytania analizujemy przypisanie właściwości stylu do elementu paragrafu Kod CSS background-color red ustawia tło na czerwone color blue przypisuje niebieski kolor tekstu natomiast margin 40px ustawia marginesy zewnętrzne wokół elementu na 40 pikseli Każda z tych właściwości pełni określoną rolę background-color odnosi się do koloru tła całego elementu co jest przydatne w wyróżnianiu lub oddzielaniu sekcji strony color zmienia kolor tekstu co jest istotne dla czytelności i estetyki treści natomiast margin wpływa na odstęp pomiędzy elementami zapewniając przejrzystość i poprawne rozmieszczenie na stronie Zrozumienie tych właściwości jest kluczowe dla projektowania responsywnych i estetycznych stron internetowych W praktyce używa się ich do tworzenia interfejsów które są atrakcyjne wizualnie i funkcjonalne dla użytkowników Zgodnie z dobrymi praktykami warto dbać o kontrast i spójność wizualną co jest bezpośrednio związane z omawianymi właściwościami

Pytanie 17

Który model barw stosuje się do wyświetlania kolorów na ekranie monitora?

A. CMYK
B. CMY
C. HLS
D. RGB
Do wyświetlania kolorów na ekranie stosuje się model RGB - obraz powstaje z mieszania trzech barw światła: czerwonej, zielonej i niebieskiej (model addytywny). Dlatego na monitorze używa się RGB.

Pytanie 18

Fragment skryptu w języku JavaScript umieszczony w ramce

t = "Ala ma kota.";
s = t.length;
A. przypisze zmiennej s zmienną t
B. przypisze zmiennej s długość tekstu z zmiennej t
C. wyświetli długość tekstu z zmiennej t
D. przypisze zmiennej s część tekstu z zmiennej t, o długości określonej przez zmienną length
Błędne przypuszczenie że kod wyświetli długość napisu ze zmiennej t wynika z niezrozumienia różnicy między przypisaniem a wyświetleniem wartości. W podanym przykładzie zmienna s przechowuje długość napisu ale kod nie zawiera żadnej instrukcji wyświetlenia tej wartości. W JavaScript do wyświetlenia w konsoli wymagane jest użycie funkcji console.log co nie zostało tu zawarte. Następnie błędna odpowiedź dotycząca przypisania fragmentu napisu wskazuje na niezrozumienie zastosowania właściwości length która zwraca całkowitą długość łańcucha a nie jego część. Aby uzyskać fragment łańcucha należałoby użyć metody substring lub slice które tej funkcji tutaj nie ma. Ostatnia błędna odpowiedź sugerująca że zmienna s przechowuje cały napis z t wykazuje brak zrozumienia samego przypisania w kontekście obiektów stringowych w JavaScript. Gdyby celem było przypisanie całego łańcucha należałoby użyć samego t bez length. Zrozumienie różnic w działaniach właściwości i metod w JavaScript jest kluczowe w skutecznym programowaniu i unikania błędów logicznych które mogą prowadzić do nieoczekiwanych rezultatów w działaniu aplikacji.

Pytanie 19

Aby utworzyć różnicową kopię zapasową bazy danych na serwerze MS SQL, w poleceniu BACKUP należy użyć klauzuli:

A.
DIFFERENTIAL
B.
WITH FORMAT
C.
FULL
D.
RESTORE
Kopia różnicowa zapisuje wyłącznie dane zmienione od ostatniej kopii pełnej, więc jest mniejsza i szybsza. W MS SQL tworzy się ją poleceniem BACKUP DATABASE ... WITH DIFFERENTIAL. Przy odtwarzaniu wgrywa się najpierw kopię pełną, a potem różnicową. Dlatego za kopię różnicową odpowiada klauzula DIFFERENTIAL.

Pytanie 20

Które wartości może przyjąć zmienna typu double?

A. 1,44; 2,55
B. 1979-12-05; 12:33
C. 2.4; 4; 3.2
D. "Ala"; 'd'
double mieści tylko liczby. Zapis 1,44; 2,55 używa PRZECINKA, którego w kodzie nie stosuje się jako separatora dziesiętnego. 1979-12-05; 12:33 to data i godzina (tekst), a "Ala"; 'd' to napis i znak. Liczbom rzeczywistym odpowiada 2.4; 4; 3.2.

Pytanie 21

Którą funkcję z menu Kolory programu GIMP użyto, w celu uzyskania efektu przedstawionego w filmie?

A. Krzywe.
B. Barwienie.
C. Inwersja.
D. Progowanie.
Prawidłowo wskazana funkcja to „Progowanie”, bo dokładnie ona zamienia obraz kolorowy lub w odcieniach szarości na obraz dwuwartościowy: piksel jest albo czarny, albo biały, w zależności od tego, czy jego jasność przekracza ustawiony próg. W GIMP-ie znajdziesz ją w menu Kolory → Progowanie. Suwakami ustalasz zakres poziomów jasności, które mają zostać potraktowane jako „białe”, a wszystko poza tym zakresem staje się „czarne”. Efekt, który się wtedy uzyskuje, jest bardzo charakterystyczny: mocno kontrastowy, bez półtonów, coś w stylu skanu czarno-białego lub grafiki do druku na ploterze tnącym. Z mojego doświadczenia progowanie świetnie nadaje się do przygotowania logotypów, szkiców technicznych, schematów, a także do wyciągania konturów z lekko rozmytych zdjęć. Często używa się go też przed wektoryzacją, żeby program śledzący krawędzie miał wyraźne granice między czernią a bielą. W pracy z grafiką na potrzeby stron WWW próg bywa stosowany np. przy tworzeniu prostych ikon, piktogramów albo masek (maski przezroczystości można przygotować właśnie na bazie obrazu progowanego). Dobrą praktyką jest najpierw sprowadzenie obrazu do odcieni szarości i dopiero potem użycie progowania, bo wtedy masz większą kontrolę nad tym, jak rozkłada się jasność i gdzie wypadnie granica progu. Warto też pamiętać, że progowanie jest operacją destrukcyjną – traci się informacje o półtonach – więc najlepiej pracować na kopii warstwy, żeby w razie czego móc wrócić do oryginału i poprawić ustawienia progu.

Pytanie 22

Tabele: Studenci, Zapisy, Zajecia są powiązane relacją. Aby wybrać jedynie nazwiska studentów oraz odpowiadające im idZajecia dla studentów z grupy 15, należy wydać kwerendę

Ilustracja do pytania
A. SELECT nazwisko, idZajecia FROM Studenci JOIN Zapisy ON Studenci.id = Zapisy.idStudenta WHERE grupa = 15;
B. SELECT nazwisko, idZajecia FROM Studenci JOIN Zapisy ON Studenci.id = Zapisy.idZajecia WHERE grupa = 15;
C. SELECT nazwisko, idZajecia FROM Studenci INNER JOIN Zapisy ON Studenci.id = Zapisy.idStudenta;
D. SELECT nazwisko, idZajecia FROM Studenci INNER JOIN Zapisy WHERE grupa= 15;
W tej odpowiedzi zostało wszystko zrobione zgodnie z zasadami projektowania relacyjnych baz danych oraz praktyk SQL. Użycie JOIN zamiast starego stylu łączenia tabel przez przecinek i warunek WHERE to nie tylko kwestia czytelności, ale już od dawna standard branżowy. JOIN jasno pokazuje, na jakiej zasadzie łączą się tabele, w tym wypadku Studenci i Zapisy – łączymy po id studenta, bo tylko w taki sposób faktycznie powiążemy konkretne osoby z ich zapisami na zajęcia. WHERE grupa = 15 dodatkowo ogranicza wynik do tej konkretnej grupy studentów, co jest bardzo powszechną praktyką filtrowania wyników w zapytaniach. Przy bardziej złożonych systemach, gdzie mamy dużo relacji, taki zapis jest czytelny i łatwy do modyfikacji. Z mojego doświadczenia, jeżeli ktoś pracuje z większą ilością danych, czy nawet pisze bardziej skomplikowane raporty, to dokładnie taki zapis – z wyraźnie określonym JOIN-em i selekcją kolumn – bardzo ułatwia życie. Warto też pamiętać, że w praktyce biznesowej często chcemy wyciągnąć konkretną informację o użytkownikach lub powiązanych encjach, a nie wszystko naraz. W tym zadaniu to właśnie połączenie po idStudenta i selekcja po grupie daje najprecyzyjniejszy i najczystszy rezultat, zgodny i z logiką, i praktyką codziennej pracy z bazami danych.

Pytanie 23

Jakie jest zadanie funkcji desaturacji w edytorze grafiki?

A. zwiększenie liczby kolorów w obrazie
B. zwiększenie jaskrawości (nasycenia) barw
C. przekształcenie barw do odcieni szarości
D. rozjaśnienie obrazu
Pozostałe odpowiedzi opisują inne operacje na obrazie. Zwiększenie jaskrawości barw to saturacja - działanie dokładnie odwrotne do desaturacji, która nasycenie odbiera. Rozjaśnienie obrazu dotyczy jasności i reguluje się je osobnymi narzędziami (poziomy, krzywe, jasność/kontrast), nie usuwaniem koloru. Zwiększanie liczby kolorów również nie pasuje - desaturacja redukuje barwy do szarości, a nie poszerza paletę. Przekształcenie do odcieni szarości wykonuje właśnie desaturacja, dlatego ta odpowiedź jest poprawna.

Pytanie 24

Aby zrealizować algorytm wyznaczający największą z trzech liczb a, b, c, wystarczy zastosować:

A. dwie tablice
B. dwa warunki
C. pięć zmiennych
D. jedną pętlę
Aby znaleźć największą z trzech liczb, wystarczą dwa warunki (porównania). Najpierw porównujemy a z b i większą z nich przyjmujemy jako tymczasowe maksimum, a potem porównujemy to maksimum z c - stąd dwa warunki. Schematycznie: if (a > b) max = a; else max = b; if (c > max) max = c;. Liczba potrzebnych porównań do znalezienia największej z n elementów to n-1, więc dla trzech liczb są to dokładnie dwa. Pętla czy tablice są tu zbędne, bo elementów jest niewiele i znamy je z góry. Dlatego wystarczą dwa warunki.

Pytanie 25

Do jakich działań można wykorzystać program FileZilla?

A. walidacji strony internetowej.
B. kompilacji skryptu na stronie.
C. publikacji strony internetowej.
D. debugowania skryptu na stronie.
FileZilla jest popularnym klientem FTP (File Transfer Protocol), który służy do przesyłania plików między lokalnym komputerem a serwerem. Publikacja strony internetowej polega na przesyłaniu plików HTML, CSS, JavaScript i innych zasobów związanych z witryną na serwer, aby były one dostępne w Internecie. Używając FileZilla, użytkownik może łatwo połączyć się z serwerem poprzez protokół FTP, co pozwala na wygodne zarządzanie plikami, ich przesyłanie oraz organizowanie folderów na serwerze. Przykładowo, po edytowaniu strony lokalnie na komputerze, można za pomocą FileZilla przesłać zmodyfikowane pliki na serwer w kilka kliknięć, co przyspiesza proces aktualizacji witryny. Zgodnie z dobrymi praktykami branżowymi, ważne jest także ustawienie odpowiednich uprawnień do plików oraz regularne tworzenie kopii zapasowych, co zwiększa bezpieczeństwo publikowanych treści. FileZilla obsługuje również protokoły SFTP i FTPS, które zapewniają dodatkowe warstwy bezpieczeństwa podczas transferu danych, co jest istotne w kontekście ochrony danych użytkowników i integracji z różnymi usługami hostingowymi.

Pytanie 26

Dla strony internetowej stworzono styl, który będzie stosowany tylko do wybranych znaczników, takich jak niektóre nagłówki oraz kilka akapitów. W tej sytuacji, aby przypisać styl do konkretnych znaczników, najodpowiedniejsze będzie użycie

Ilustracja do pytania
A. klasy
B. selektora akapitu
C. identyfikatora
D. pseudoklasy
Pseudoklasy w CSS są używane do stylizowania elementów w określonym stanie, np. :hover dla zmiany stylu po najechaniu myszą. Nie są odpowiednie do przypisywania unikalnych stylów do konkretnych elementów. Identyfikator w CSS, oznaczany przez #, jest używany do stylizowania jednego unikalnego elementu na stronie. Jego użycie jest ograniczone do jednego elementu, co jest zgodne z zasadą unikalności identyfikatorów w dokumencie HTML. Nie nadaje się do sytuacji, gdy ten sam styl ma być stosowany do wielu elementów, ponieważ zmuszałoby to do definiowania i przypisywania wielu unikalnych identyfikatorów do każdego z nich, co jest przeciwieństwem DRY (Don't Repeat Yourself). Selektor akapitu bezpośrednio odnosi się do wszystkich elementów danego typu, np. p dla wszystkich akapitów. Nie jest on elastyczny, gdy chcemy zastosować styl tylko do niektórych elementów danego typu. Klasy oferują większą elastyczność w zarządzaniu stylami wielu elementów, ponieważ mogą być stosowane do różnych typów elementów w różnych miejscach dokumentu HTML. Ponadto, klasy są bardziej czytelne i ułatwiają utrzymanie kodu, co jest zgodne z najlepszymi praktykami w programowaniu front-endowym. Użycie klas wspiera również lepszą strukturę i modularność kodu CSS, co jest istotne w kontekście pracy zespołowej oraz skalowalności projektu.

Pytanie 27

Spośród wymienionych formatów, który charakteryzuje się najszerszą rozpiętością tonalną?

A. BMP
B. JPEG
C. PNG
D. RAW
Odpowiedzi, które nie są poprawne, można analizować w kontekście ich technicznych ograniczeń. Format PNG, mimo że obsługuje przezroczystość i jest bezstratnym formatem, ma ograniczoną rozpiętość tonalną, co oznacza, że nie przechowuje tak dużej ilości informacji tonalnych jak RAW. Ponadto, jego główną funkcją jest przechowywanie obrazów z dużą ilością detali w mniej skomplikowanych kolorach, co czyni go mniej odpowiednim do profesjonalnej obróbki zdjęć w trudnych warunkach oświetleniowych. Format BMP, choć prosty i łatwy w użyciu, również nie wspiera zaawansowanej obróbki kolorów, a jego duża objętość plików powoduje, że nie jest praktyczny dla profesjonalnych zastosowań. BMP nie korzysta z kompresji, co sprawia, że pliki są znacznie większe niż w przypadku innych formatów, ale nie oferuje dodatkowych korzyści w zakresie tonalności. JPEG, pomimo szerokiego zastosowania w fotografii i sieci, jest formatem stratnym, co oznacza, że podczas kompresji traci część danych, a tym samym rozpiętość tonalna jest ograniczona. JPEG jest bardziej odpowiedni do codziennego użytku ze względu na mniejszy rozmiar plików, ale nie daje takiej elastyczności w edycji jak RAW, co czyni go niewłaściwym wyborem dla profesjonalnych fotografów poszukujących najwyższej jakości obrazu.

Pytanie 28

Aby wykonać przycisk na stronę internetową zgodnie z przedstawionym wzorem, w programie do grafiki rastrowej należy użyć opcji:

Ilustracja do pytania
A. zniekształcenie i deformacja
B. zaznaczenie eliptyczne
C. propagacja wartości
D. zaokrąglenie narożników (prostokąt z zaokrąglonymi rogami)
Wzór przedstawia prostokątny przycisk z zaokrąglonymi rogami. Taki kształt rysuje się w edytorze grafiki rastrowej narzędziem prostokąta z zaokrąglonymi rogami (lub zaokrąglając zaznaczenie o zadanym promieniu). Daje to równe, gładkie narożniki zgodne z przykładem. Dlatego poprawna jest opcja zaokrąglenia narożników.

Pytanie 29

Pierwszym etapem konwersji sygnału analogowego na cyfrowy jest:

A. próbkowanie
B. kodowanie
C. filtrowanie
D. kwantyzacja
Konwersja sygnału analogowego na cyfrowy zaczyna się od PRÓBKOWANIA - mierzenia wartości sygnału w równych odstępach czasu (z określoną częstotliwością, np. 44,1 kHz). Powstaje ciąg próbek, które dopiero potem się kwantyzuje i koduje. Zapamiętaj kolejność: próbkowanie → kwantyzacja → kodowanie.

Pytanie 30

Utworzono bazę danych z tabelą mieszkancy, która zawiera pola: nazwisko, imie, miasto. Następnie zrealizowano poniższe zapytanie do bazy:

SELECT nazwisko, imie FROM mieszkancy WHERE miasto="Poznań" UNION ALL SELECT nazwisko, imie FROM mieszkancy WHERE miasto="Kraków"
Wskaż zapytanie, które zwróci te same dane:
A. SELECT nazwisko, imie FROM mieszkancy WHERE miasto="Poznań" OR miasto="Kraków"
B. SELECT nazwisko, imie FROM mieszkancy AS "Poznań" OR "Kraków"
C. SELECT nazwisko, imie FROM mieszkancy WHERE miasto BETWEEN "Poznań" OR "Kraków"
D. SELECT nazwisko, imie FROM mieszkancy WHERE miasto HAVING "Poznań" OR "Kraków"
Zarówno druga, jak i trzecia odpowiedź zawierają błędne konstrukcje zapytań SQL, które nie są zgodne z syntaktyką SQL. W drugiej propozycji użycie aliasu 'AS' dla miast jest niepoprawne, ponieważ aliasowanie dotyczy głównie tabel i kolumn, a nie wartości w klauzuli WHERE. W konsekwencji zapytanie nie zwróci żadnych danych, gdyż nie jest w stanie poprawnie zinterpretować podanych warunków. Trzecia odpowiedź sugeruje użycie operatora BETWEEN w kontekście miast, co również jest niepoprawne. BETWEEN wymaga wartości liczbowych lub dat, a nie tekstowych. Dodatkowo, użycie operatora OR w kontekście BETWEEN jest błędne, ponieważ BETWEEN sam w sobie definiuje zakres wartości. Ostatnia odpowiedź jest również niepoprawna, ponieważ klauzula HAVING jest wykorzystywana w kontekście agregacji danych i nie jest przeznaczona do stosowania w prostych warunkach filtracji, jak w tym przypadku. Typowym błędem jest mylenie kontekstu użycia różnych klauzul w SQL oraz niewłaściwe stosowanie operatorów, co prowadzi do niepoprawnych wniosków o skutkach zapytań. Warto zrozumieć zasady rządzące składnią SQL, aby efektywnie tworzyć zapytania, które zwracają oczekiwane wyniki.

Pytanie 31

Co powinien umożliwiać edytor działający w trybie WYSIWYG?

A. tworzenie podstawowej grafiki wektorowej
B. obróbkę plików dźwiękowych
C. uzyskanie wyglądu strony zbliżonego do jej obrazu w przeglądarce
D. publikację strony przez wbudowany klient FTP
WYSIWYG dotyczy edycji z podglądem wyglądu, a nie innych funkcji. Tworzenie grafiki wektorowej, klient FTP do publikacji czy obróbka dźwięku to osobne narzędzia. Istotą WYSIWYG jest uzyskanie wyglądu zbliżonego do obrazu strony w przeglądarce.

Pytanie 32

Jak zbudować zapytanie SELECT, aby wyświetlić nazwiska mieszkańców bez powtórzeń (unikalne)?

A.
SELECT AVG(nazwisko) FROM mieszkancy;
B.
SELECT TOP 10 nazwisko FROM mieszkancy;
C.
SELECT nazwisko FROM mieszkancy ORDER BY nazwisko;
D.
SELECT DISTINCT nazwisko FROM mieszkancy;
Aby usunąć powtórzenia z wyniku, dodaje się do SELECT słowo DISTINCT, np. SELECT DISTINCT nazwisko FROM mieszkancy. Zapytanie zwróci wtedy każde nazwisko tylko raz, nawet jeśli w tabeli występuje wielokrotnie. Dlatego unikalne nazwiska daje SELECT DISTINCT.

Pytanie 33

Jakie będzie rezultatem działania poniższego kodu PHP?

$a = $c = true; 
$b = $d = false;
if(($a && $b) || ($c && $d)) echo 'warunek1';
elseif(($a && $b) || ($c || $d)) echo 'warunek2';
elseif(($c && $d) || (!$a)) echo 'warunek3';
else echo 'warunek4';
A. warunek1
B. warunek3
C. warunek2
D. warunek4
Kod PHP zawiera kilka warunków logicznych w strukturze if-else. Przy początkowych wartościach zmiennych, $a i $c są równe true, natomiast $b i $d są false. Pierwszy warunek if sprawdza czy ($a && $b) || ($c && $d), co tłumaczy się na (true && false) || (true && false), co daje false || false, a w rezultacie false. Zatem warunek się nie spełnia i przechodzimy do kolejnego. W elseif mamy ($a && $b) || ($c || $d), co oznacza (true && false) || (true || false), co daje false || true, czyli true. Ten warunek się spełnia i wyświetla 'warunek2'. Kod przechodzi do następnego elseif tylko wtedy, gdy poprzednie warunki były false, co w tym przypadku nie ma miejsca. W praktyce, analizując kod PHP, ważne jest zrozumienie operatorów logicznych: && oznacza 'i', || oznacza 'lub', a ! oznacza negację. Prawidłowe stosowanie tych operatorów jest kluczowe w programowaniu warunkowym, pozwalając na kontrolę przepływu programu i podejmowanie decyzji w oparciu o złożone logiki. Użycie elseif pozwala na czytelne i klarowne rozgałęzienie kodu, co jest dobrą praktyką w pisaniu złożonych skryptów.

Pytanie 34

Na podstawie relacji przedstawionej na ilustracji, można stwierdzić, że jest to relacja

Ilustracja do pytania
A. jeden do wielu, gdzie kluczem obcym jest pole w tabeli kadra
B. jeden do jednego, gdzie obie tabele mają przypisane klucze obce
C. jeden do wielu, gdzie kluczem obcym jest pole w tabeli uslugi
D. wiele do wielu pomiędzy kluczami głównymi obu tabel
Odpowiedzi błędne opierają się na niewłaściwym zrozumieniu relacji w bazach danych. Pierwsza z błędnych koncepcji sugeruje relację jeden do wielu, gdzie kluczem obcym jest pole w tabeli kadra, co jest odwrotne do przedstawionej struktury, gdyż w rzeczywistości pole kadra_id znajduje się w tabeli uslugi, wskazując na tabelę kadra. Relacja jeden do jednego, w której obie tabele mają klucze obce, oznaczałoby, że każdy rekord w jednej tabeli jest ściśle powiązany z jednym rekordem w drugiej, co nie jest przypadkiem dla tych danych. Takie podejście zwykle stosuje się, gdy tabele przechowują różne aspekty tego samego podmiotu, co nie jest odzwierciedlone na diagramie. Relacja wiele do wielu między kluczami głównymi obu tabel wymagałaby użycia dodatkowej tabeli łączącej, co umożliwiałoby powiązanie wielu rekordów każdej z tabel z wieloma rekordami drugiej, co również nie jest przedstawione tutaj. Typową pomyłką przy analizie tego typu relacji jest nieuwzględnienie struktury kluczy obcych i ich roli w łączeniu danych poprzez zrozumienie ich jako jedynie strukturalne powiązania, zamiast narzędzi umożliwiających integralność i spójność danych w bazie. Ważne jest, aby zawsze analizować kierunek relacji i rolę kluczowych pól w kontekście aplikacji i modelu danych, co zapobiega błędnym interpretacjom i wspiera prawidłowe projektowanie bazy danych, zgodnie z jej wymaganiami funkcjonalnymi i wydajnościowymi.

Pytanie 35

Które polecenie nadaje użytkownikowi „uczen” najniższy poziom uprawnień (tylko odczyt, bez zmiany danych i struktury)?

A.
GRANT ALTER, SELECT ON szkola.przedmioty TO uczen;
B.
GRANT DROP ON szkola.przedmioty TO uczen;
C.
GRANT SELECT ON szkola.przedmioty TO uczen;
D.
GRANT INSERT, DROP ON szkola.przedmioty TO uczen;
Uprawnienia w SQL nadaje się poleceniem GRANT, a ich „poziom” zależy od tego, co użytkownik może zrobić. Najwęższy, najbezpieczniejszy zakres to wyłącznie odczyt danych, czyli SELECT - użytkownik widzi dane, lecz nie może ich zmieniać ani ruszać struktury tabeli. Zgodnie z zasadą najmniejszych uprawnień kontu aplikacyjnemu czy „uczniowi” daje się tylko tyle, ile naprawdę potrzebuje. Dlatego najniższy poziom uprawnień nadaje GRANT SELECT.

Pytanie 36

Dzięki któremu mechanizmowi możliwe jest dostosowanie wyglądu strony do konkretnego użytkownika i jego identyfikacja w serwisie?

A. połączenia z bazą
B. cookie (ciasteczek)
C. formularzy
D. obiektów DOM
Pytanie dotyczy rozpoznania konkretnego użytkownika między wizytami. Obiekty DOM to reprezentacja struktury strony, połączenie z bazą dotyczy danych na serwerze, a formularze tylko zbierają dane wejściowe - żadne z nich samo nie zapamiętuje tożsamości. Robią to cookie (ciasteczka).

Pytanie 37

Wskaż funkcję JavaScript, która umożliwia obliczenie połowy kwadratu liczby podanej jako argument.

A. function wynik(a) { return a*a/2; }
B. function wynik(a) { return a/2+a/2; }
C. function wynik(a) { return a*2/2; }
D. function wynik(a) { return 2*a/a; }
W analizie niepoprawnych odpowiedzi można zauważyć kilka typowych pomyłek, które prowadzą do błędnych obliczeń. Pierwsza z odpowiedzi, 'function wynik(a) { return a/2+a/2; }', jest myląca, ponieważ ta funkcja w rzeczywistości wykonuje dodawanie dwóch połówek liczby, co prowadzi do uzyskania wartości równiej 'a', a nie połowy kwadratu. W ten sposób nie realizuje postawionego celu. Druga propozycja, 'function wynik(a) { return a*2/2; }', również nie przynosi oczekiwanego rezultatu. Ta funkcja najpierw mnoży 'a' przez 2, a następnie dzieli przez 2, co ponownie prowadzi do wartości równej 'a'. Takie podejście jest nieefektywne i nie spełnia wymogów zadania. Kolejna odpowiedź, 'function wynik(a) { return 2*a/a; }', jest całkowicie błędna, ponieważ ta funkcja po prostu zwraca wartość 2, niezależnie od wartości 'a', co jest niezgodne z definicją obliczania połowy kwadratu liczby. W każdym z przypadków dostrzegamy brak zrozumienia podstawowych operacji arytmetycznych oraz ich zastosowania w kontekście funkcji. Typowym błędem jest skupienie się na manipulacji wartością 'a', zamiast zrozumienia, że celem jest obliczenie kwadratu tej liczby, a następnie podzielenie wyniku przez 2, co jest kluczowym elementem zadania.

Pytanie 38

Co oznacza integralność referencyjna w relacyjnych bazach danych?

A. klucz główny i obcy nie zawierają wartości NULL
B. klucz obcy musi równać się kluczowi głównemu powiązanej tabeli albo być NULL
C. klucz główny i obcy nie mogą być puste
D. każdemu kluczowi głównemu odpowiada dokładnie jeden klucz obcy
Pozostałe opisy są nieprecyzyjne. Klucz obcy MOŻE być pusty, więc warunki „nie mogą być puste / bez NULL” są błędne. Jednemu kluczowi głównemu może odpowiadać WIELE kluczy obcych (relacja 1..n), nie „dokładnie jeden”. Integralność referencyjna to: klucz obcy wskazuje istniejący klucz główny albo jest NULL.

Pytanie 39

Określ, w jaki sposób należy odnosić się do pliku default.css, jeżeli index.html znajduje się bezpośrednio w folderze Strona?

Ilustracja do pytania
A. <link rel="stylesheet" type="text/css" href="c:\style/default.css" />
B. <link rel="stylesheet" type="text/css" href="c:/style/default.css" />
C. <link rel="stylesheet" type="text/css" href="...\style\default.css" />
D. <link rel="stylesheet" type="text/css" href="./style/default.css" />
Niepoprawne odpowiedzi wynikają z błędnego zrozumienia struktury ścieżek w HTML. Stosowanie absolutnych ścieżek takich jak c:/style/default.css jest niezalecane, ponieważ lokalizuje plik na konkretnym dysku twardym, co jest niepraktyczne w przypadku aplikacji webowych, które mogą być przenoszone na serwery o różnych strukturach katalogów. Użycie backslashów \ w ścieżkach takich jak ...\style\default.css jest błędne w kontekście URL, ponieważ slash / jest standardem w adresach URL, zgodnie z normami RFC. Backslashy używa się w systemach Windows do ścieżek lokalnych, ale w kontekście HTML powoduje to problemy z prawidłowym zaadresowaniem zasobów. Stosowanie ścieżek absolutnych lub błędnej składni w odwołaniach może prowadzić do sytuacji, w których pliki CSS nie są ładowane, co skutkuje nieprawidłowym wyświetlaniem strony. Dlatego istotne jest zrozumienie, że relatywne ścieżki zapewniają większą kompatybilność i elastyczność projektu webowego, co jest esencją dobrych praktyk w programowaniu frontendowym. Utrzymywanie spójnej i poprawnej struktury ścieżek jest kluczem do efektywnego zarządzania zasobami w aplikacjach internetowych.

Pytanie 40

Dokument HTML określa akapit oraz obrazek. Aby obrazek był wyświetlany przez przeglądarkę w tej samej linii co akapit po jego lewej stronie, należy w stylu CSS obrazka uwzględnić właściwość

A. style: left;
B. align: left;
C. alt: left;
D. float: left;
Odpowiedź "float: left;" jest naprawdę trafna. Ta właściwość w CSS sprawia, że elementy układają się obok siebie, co w tym przypadku oznacza, że rysunek wyląduje po lewej stronie akapitu. Jak użyjemy float, to rysunek 'przesuwa się' na lewo, a tekst z akapitu otacza go z prawej strony. To taki popularny sposób w webdesignie, który pozwala na ładniejsze połączenie obrazków z tekstem. Warto pamiętać, że czasem trzeba zastosować clearfix, zwłaszcza gdy mamy pływające elementy w większym układzie, żeby uniknąć problemów z rozmieszczeniem. Stosowanie float w CSS to dobra praktyka, bo pomaga zachować czytelność i estetykę tekstu. Na przykład, jeśli mamy sekcję artykułu z obrazem, który ilustruje omawiany temat, to zastosowanie float: left; sprawi, że treść będzie ładnie się układać i poprawi wrażenia użytkownika.