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: 22 czerwca 2026 16:51
  • Data zakończenia: 22 czerwca 2026 17:09

Egzamin zdany!

Wynik: 35/40 punktów (87,5%)

Wymagane minimum: 20 punktów (50%)

Nowe
Analiza przebiegu egzaminu- sprawdź jak rozwiązywałeś pytania
Pochwal się swoim wynikiem!
Szczegółowe wyniki:
Pytanie 1

Jakie wartości zostaną wypisane po wykonaniu poniższego skryptu?

var x = 1;
var y;
/*0*/ ++y;
/*1*/ document.write(++x);
/*2*/ document.write(" ");
/*3*/ document.write(x--);
/*4*/ document.write(" ");
/*5*/ document.write(x);
A. 1 2 1
B. 1 2 2
C. 2 2 1
D. 2 1 1
Wynik działania skryptu JavaScript wypisuje wartości według kolejności operacji na zmiennej x. Na początku wartość x wynosi 1. Pierwsza operacja preinkrementacji ++x zwiększa wartość x o 1 przed jej użyciem, więc teraz x wynosi 2. Kolejna instrukcja wypisuje tę wartość. Następnie w kodzie jest spacja, która oddziela kolejne wartości. Kolejna operacja to postdekrementacja x--, która wypisuje aktualną wartość x, a dopiero potem zmniejsza ją o 1. W efekcie wypisywane jest 2, a następnie x zmienia wartość na 1. Ostatecznie dokument.write wypisuje spację i końcową wartość x, która wynosi 1. W praktycznych zastosowaniach preinkrementacja i postdekrementacja są często używane w pętlach lub operacjach, gdzie istotna jest kolejność modyfikacji wartości. Użycie odpowiednich operatorów wpływa na logikę programu, co jest kluczowe przy pisaniu i analizowaniu kodu. Ważne jest również zrozumienie różnic między pre- a post-operatorami inkrementacji i dekrementacji, co jest podstawą w programowaniu JavaScript.

Pytanie 2

Który zapis w dokumencie HTML połączy stronę z zewnętrznym arkuszem stylów style.css?

A.
<a src="/style.css">
B.
<a href="/style.css">
C.
<link rel="stylesheet" href="/style.css">
D.
<link rel="stylesheet' src="/style.css">
Zewnętrzny arkusz stylów dołącza się w <head> znacznikiem <link rel="stylesheet" href="/style.css"> - rel określa typ relacji, a href wskazuje plik. Dlatego poprawny jest ten zapis.

Pytanie 3

W dokumencie HTML zdefiniowano pewne elementy w klasie o nazwie "nomargin". W celu przeprowadzenia operacji na tych elementach za pomocą języka JavaScript, można wykorzystać funkcję

A. getElementsByClassName("nomargin")
B. getElementById("nomargin")
C. getElement("nomargin")
D. getElementsByTagName("nomargin")
Funkcja getElementsByClassName("nomargin") jest poprawnym sposobem na uzyskanie dostępu do elementów HTML przypisanych do klasy o nazwie 'nomargin'. Jest to metoda dostępna w obiekcie document, która zwraca kolekcję wszystkich elementów, które mają wskazaną klasę. W przeciwieństwie do getElementById, która zwraca pojedynczy element o podanym identyfikatorze, getElementsByClassName zwraca listę, co jest szczególnie przydatne, gdy mamy do czynienia z wieloma elementami oznaczonymi tą samą klasą. Przykładowo, jeśli mamy kilka divów z klasą 'nomargin', możemy w łatwy sposób iterować przez wszystkie z nich i stosować różne operacje, takie jak zmiana stylów czy dodawanie zdarzeń. Używanie tej metody jest zgodne z najlepszymi praktykami, ponieważ pozwala na selekcję grupy elementów, co z kolei wspiera modularność i łatwość zarządzania kodem. Warto również pamiętać, że w przypadku użycia tej metody, zmiany w DOM będą miały wpływ na wszystkie elementy, co może być przydatne w złożonych interfejsach użytkownika.

Pytanie 4

Który format stosuje BEZSTRATNĄ kompresję dźwięku?

A. MP3
B. AAC
C. FLAC
D. WWA
Pozostałe formaty kompresują dźwięk STRATNIE - usuwają część informacji, by mocniej zmniejszyć plik (MP3, AAC). „WWA” nie jest standardowym formatem (mylone z WMA). Bezstratną kompresję zapewnia FLAC.

Pytanie 5

Jakie jest zadanie poniższej pętli?

int x = 0;
while (x < 10)
{
    mojeKsiazki[x] = new Ksiazka();
    x++;
}
A. stwórzenie jednego obiektu typu mojeKsiazki
B. uzupełnienie tablicy Ksiazka danymi.
C. stworzenie dziesięciu instancji obiektów typu Ksiazka.
D. wyświetlenie danych z tabeli Ksiazka na ekranie.
W przedstawionej pętli while zmienna x jest inicjowana wartością 0, a następnie w każdej iteracji pętli tworzy nowy obiekt typu Ksiazka, który jest przypisywany do elementu tablicy mojeKsiazki w indeksie x. Pętla kontynuuje działanie, aż x osiągnie wartość 10, co oznacza, że zostaną utworzone obiekty dla indeksów od 0 do 9, co łącznie daje 10 obiektów. Jest to standardowy sposób inicjalizacji tablicy obiektów w języku C#, który pokazuje, jak można dynamicznie tworzyć i przechowywać instancje klas. W praktycznych zastosowaniach, takie podejście jest bardzo użyteczne, gdy potrzebujemy przechować wiele podobnych obiektów, na przykład w aplikacjach do zarządzania danymi, gdzie każde wpisane dane może być reprezentowane przez obiekt. Poprawna alokacja pamięci oraz zarządzanie obiektami są kluczowe w programowaniu obiektowym, a umiejętność skutecznego wykorzystywania pętli do inicjalizacji tablic jest niezbędna dla każdego programisty.

Pytanie 6

Jakie zapytanie SQL umożliwi wyszukanie z podanej tabeli tylko imion i nazwisk pacjentów, którzy przyszli na świat przed rokiem 2002?

Ilustracja do pytania
A. SELECT * FROM Pacjenci WHERE rok_urodzenia LIKE 2002
B. SELECT * FROM Pacjenci WHERE rok_urodzenia <= 2002
C. SELECT imie, nazwisko FROM Pacjenci WHERE rok_urodzenia < 2002
D. SELECT imie, nazwisko FROM Pacjenci WHERE data_ostatniej_wizyty < 2002
To zapytanie SQL, które napisałeś, czyli SELECT imie, nazwisko FROM Pacjenci WHERE rok_urodzenia < 2002, jest całkiem trafione. Po pierwsze, używasz operatora SELECT, żeby wskazać, jakie kolumny chcesz zwrócić - czyli imię i nazwisko. To jest dokładnie to, co było potrzebne. Po drugie, warunek WHERE z rokiem urodzenia zapewnia, że do wyników dostają się tylko pacjenci, którzy przyszli na świat przed 2002 rokiem. No i to jest ważne, bo masz tutaj operator mniejszości <, który wyklucza sam rok 2002. Takie podejście jest super przydatne w bazach danych, bo pozwala na filtrowanie informacji w oparciu o lata, co często wykorzystuje się w raportach i analizach. Generalnie, dobre praktyki w SQL mówią, że warto precyzyjnie określać, jakie kolumny chcesz uwzględnić, bo to pomaga odciążyć system i zrobione zapytanie będzie działać wydajniej. Twoje zapytanie nie tylko spełnia wymagania, ale także jest optymalne, co jest naprawdę istotne w pracy z bazami danych.

Pytanie 7

Aby wybrać z bazy danych rekordy spełniające określone kryteria, należy utworzyć:

A. kwerendę (zapytanie)
B. raport
C. makro
D. formularz
Kwerenda (zapytanie) to obiekt bazy danych, który wybiera rekordy spełniające zadane warunki - odpowiada zapytaniu SELECT ... WHERE w SQL. Można w niej wskazać kolumny, kryteria filtrowania i sortowanie, a wynik wykorzystać dalej w formularzu czy raporcie. Dlatego do wybrania danych wg kryteriów tworzy się kwerendę.

Pytanie 8

Aby nadać użytkownikowi uprawnienia do tabel w bazie danych, należy zastosować polecenie:

A.
REVOKE
B.
CREATE
C.
SELECT
D.
GRANT
Uprawnienia do tabel nadaje się poleceniem GRANT. Należy ono do języka kontroli danych DCL, który decyduje, kto i co może robić w bazie. Budowa polecenia jest czytelna: po GRANT wymieniasz rodzaje uprawnień, po ON wskazujesz tabelę, a po TO - użytkownika, na przykład GRANT SELECT, INSERT ON klienci TO jan. Dzięki temu administrator precyzyjnie ustala, kto ma dostęp do danych i jakie operacje może na nich wykonać. Poleceniem odwrotnym, które cofa przyznane prawa, jest REVOKE.

Pytanie 9

Jakiego typu tablicy dotyczy instrukcja dodawania elementu w JavaScript?

Tablica['technik'] = 'informatyk';
A. liczbowej
B. wielowymiarowej
C. asocjacyjnej
D. stałej
Tablica asocjacyjna w JavaScript to struktura danych, która przechowuje wartości w formie par klucz-wartość, co pozwala na efektywne i dynamiczne przypisywanie i pobieranie danych. Klucze w tablicy asocjacyjnej mogą być dowolnymi łańcuchami znaków, co daje dużą elastyczność w organizacji danych. Przykładem jest przypisanie Tablica['technik'] = 'informatyk'; gdzie 'technik' jest kluczem, a 'informatyk' wartością. To podejście jest zgodne ze standardami JavaScript, w którym tablice asocjacyjne są implementowane jako obiekty. W praktyce używa się ich często do przechowywania konfiguracji, danych użytkowników lub innych danych, które wymagają szybkiego dostępu i modyfikacji. Tablice asocjacyjne umożliwiają dynamiczne dodawanie nowych par klucz-wartość, co jest cenioną cechą w aplikacjach wymagających skalowalności. Warto zauważyć, że podczas gdy tradycyjne tablice używają indeksów liczbowych, tablice asocjacyjne oferują większą elastyczność poprzez użycie kluczy tekstowych, co jest zgodne z dobrymi praktykami kodowania i ułatwia czytelność oraz utrzymanie kodu.

Pytanie 10

W przedstawionym filmie, aby połączyć tekst i wielokąt w jeden obiekt tak, aby operacja ta była odwracalna zastosowano funkcję

A. wykluczenia.
B. grupowania.
C. sumy.
D. części wspólnej.
Prawidłowo – w filmie została użyta funkcja grupowania. W grafice wektorowej, np. w programach typu Inkscape, CorelDRAW czy Illustrator, grupowanie służy właśnie do logicznego połączenia kilku obiektów w jeden „zestaw”, ale bez trwałego mieszania ich geometrii. To znaczy: tekst dalej pozostaje tekstem, wielokąt dalej jest wielokątem, tylko są traktowane jak jeden obiekt przy przesuwaniu, skalowaniu czy obracaniu. Dzięki temu operacja jest w pełni odwracalna – w każdej chwili możesz rozgrupować elementy i edytować każdy osobno.
Moim zdaniem to jest podstawowa dobra praktyka w pracy z projektami, które mogą wymagać późniejszych poprawek: podpisy, etykiety, logotypy, schematy techniczne. Jeśli połączysz tekst z kształtem za pomocą operacji boolowskich (suma, część wspólna, wykluczenie), to tekst zwykle zamienia się na krzywe, przestaje być edytowalny jako tekst. To bywa potrzebne przy przygotowaniu do druku czy eksportu do formatu, który nie obsługuje fontów, ale nie wtedy, gdy zależy nam na łatwej edycji.
Z mojego doświadczenia: przy projektowaniu interfejsów, ikon, prostych banerów na WWW czy grafik do multimediów, najrozsądniej jest najpierw grupować logicznie elementy (np. ikona + podpis), a dopiero na samym końcu, gdy projekt jest ostateczny, ewentualnie zamieniać tekst na krzywe. Grupowanie pozwala też szybko zaznaczać całe moduły projektu, wyrównywać je względem siebie, duplikować całe zestawy (np. kafelki menu, przyciski z opisami) bez ryzyka, że coś się rozjedzie. W grafice komputerowej to taka podstawowa „organizacja pracy” – mniej destrukcyjna niż różne operacje na kształtach i zdecydowanie bardziej elastyczna przy późniejszych zmianach.

Pytanie 11

Kod CSS można włączyć do dokumentu HTML, używając znacznika

A. <head>
B. <style>
C. <body>
D. <meta>
Odpowiedź <style> jest prawidłowa, ponieważ ten znacznik HTML jest dedykowany do osadzania kodu CSS wewnątrz dokumentu HTML. Znacznik <style> powinien być umieszczony w sekcji <head> dokumentu, co umożliwia przeglądarkom interpretację stylów przed renderowaniem treści strony. Dzięki temu można definiować różne reguły CSS, które modyfikują wygląd elementów HTML, co jest kluczowe w tworzeniu estetycznych i funkcjonalnych stron internetowych. Przykładowo, można użyć <style> do określenia koloru tła, rozmiaru czcionki czy marginesów. Ważne jest, aby stosować zasady dotyczące kaskadowości, ponieważ style zdefiniowane w <style> mają priorytet nad stylem zewnętrznym, jeśli są tak samo specyficzne. Dodatkowo, korzystanie z <style> jest zgodne z zasadami dobrych praktyk, takich jak unikanie nadmiarowego ładowania zewnętrznych plików CSS w przypadku prostych projekty, co przyspiesza czas ładowania strony.

Pytanie 12

Po uruchomieniu zamieszczonego w ramce skryptu w języku JavaScript, w przeglądarce zostanie wyświetlona wartość:

var a = 5;
var b = a--;
a *= 3;
document.write(a + "," + b);
A. 15,4
B. 12,5
C. 15,5
D. 12,4
W tym skrypcie JavaScript mamy operator dekrementacji a--, gdzie najpierw wartość zmiennej a jest przypisana do zmiennej b, a dekrementacja następuje później. Jeśli tego nie rozumiesz, może to prowadzić do różnych nieporozumień co do wynikowych wartości. Czyli po a-- b przyjmuje pierwotną wartość a, która wynosi 5. Warto zrozumieć kolejność operacji, bo przy operatorze postfix zmiana wartości następuje po przypisaniu. Później, po dekrementacji, a staje się 4, co czasem jest źle interpretowane, bo ludzie myślą, że b też by się zmieniło. Potem jest a *= 3, gdzie 4 mnożymy przez 3 i dostajemy 12. Często ludzie popełniają błąd, zakładając, że operatory działają równocześnie w jednym wierszu kodu. Ważne jest, żeby znać te subtelności, bo pomaga to w lepszym programowaniu i kontrolowaniu, jak zmienne się zmieniają.

Pytanie 13

Która instrukcja służy do iteracji (powtarzania)?

A.
else
B.
throw
C.
switch
D.
for
Pozostałe instrukcje nie iterują. else to gałąź instrukcji warunkowej, switch wybiera wariant spośród wielu, a throw zgłasza wyjątek. Powtarzanie zapewnia pętla for.

Pytanie 14

W jakim celu tworzy się kaskadowe arkusze stylów (CSS)?

A. aby definiować formatowanie (wygląd) elementów strony
B. aby przyspieszyć wyświetlanie grafiki
C. aby ułatwić użytkownikowi nawigację
D. aby dodać treści tekstowe
Kaskadowe arkusze stylów (CSS) tworzy się, aby definiować FORMATOWANIE i wygląd elementów strony - kolory, czcionki, rozmieszczenie, marginesy - oddzielając warstwę prezentacji od treści zapisanej w HTML. Dlatego CSS służy do definiowania wyglądu elementów strony.

Pytanie 15

Element

<meta charset="utf-8">
służy do definiowania metadanych witryny internetowej związanych z
A. słowami kluczowymi
B. kodowaniem znaków
C. językiem witryny
D. opisem witryny
Element <meta charset="utf-8"> jest kluczowym fragmentem kodu HTML, który definiuje kodowanie znaków używane na stronie internetowej. Ustawienie kodowania na UTF-8 jest obecnie standardem branżowym, który pozwala na prawidłowe wyświetlanie tekstów w różnych językach, a także obsługę różnorodnych znaków specjalnych. Dzięki temu strona będzie renderować się poprawnie niezależnie od używanego języka, co jest szczególnie istotne w kontekście globalizacji i dostępności treści dla szerokiego grona użytkowników. W praktyce, poprawne kodowanie znaków eliminuje problemy z wyświetlaniem polskich znaków diakrytycznych, takich jak ą, ć, ę, ł czy ź. Warto także zauważyć, że błędne ustawienie kodowania może prowadzić do tzw. "krzaków" w treści, co znacząco obniża jakość prezentacji strony oraz jej użyteczność. Dlatego zaleca się zawsze stosować <meta charset="utf-8"> w nagłówku dokumentu HTML, aby zapewnić pełną kompatybilność i poprawność wyświetlania treści w różnych przeglądarkach i systemach operacyjnych.

Pytanie 16

Aby osiągnąć efekt przedstawiony na ilustracji, w kodzie HTML należy zastosować znacznik skrótu <abbr> z atrybutem

Ilustracja do pytania
A. title
B. dfn
C. alt
D. name
Znacznik <abbr> w HTML służy do opisywania skrótów i akronimów. Atrybut title jest kluczowy, ponieważ dostarcza rozwinięcie skrótu jako podpowiedź tekstową, która pojawia się, gdy użytkownik najedzie kursorem na element. Jest to zgodne z dobrymi praktykami dostępności, umożliwiając użytkownikom lepsze zrozumienie treści. Przykładowo, kod <abbr title='inżynier'>inz.</abbr> spowoduje, że po najechaniu kursorem na skrót 'inz.', pojawi się rozwinięcie 'inżynier'. Takie podejście jest szczególnie istotne w przypadku dokumentów technicznych czy naukowych, gdzie użycie skrótów jest powszechne a pełne rozwinięcie może być niezbędne dla pełnego zrozumienia treści. Atrybut title jest również używany w innych znacznikach HTML, np. <img> do opisania obrazów, co wzbogaca semantykę strony. Zastosowanie <abbr> z atrybutem title wspiera również działanie technologii wspomagających, takich jak czytniki ekranowe, które mogą odczytać pełne rozwinięcie skrótu, podnosząc poziom dostępności strony.

Pytanie 17

Wynikiem działania pętli będzie wypisanie liczb

for ($i = 0; $i <= 20; $i += 4)
echo $i . ', ';
A. 0,1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20,
B. 0, 4, 8, 12, 16,
C. 0, 4, 8, 12, 16, 20,
D. 0,1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
Twoja odpowiedź jest prawidłowa. Pętla for w języku PHP jest strukturą kontrolną, która pozwala na wielokrotne wykonanie określonej sekwencji instrukcji. W tym konkretnym przypadku, pętla zaczyna od wartości 0 i zwiększa wartość $i o 4 przy każdej iteracji, aż osiągnie lub przekroczy wartość 20. W wyniku tego, wartości, które otrzymujemy i zostają wypisane, to 0, 4, 8, 12, 16, 20. Pętle są niezwykle użyteczne i wszechstronne w programowaniu, pozwalając na automatyzację i usprawnienie wielu zadań. Pętla for, którą tu widzimy, jest przykładem zastosowania tej struktury do generowania sekwencji liczb, co ma wiele zastosowań, na przykład w tworzeniu tablic, sterowaniu kolejnością wykonywania operacji lub generowaniu dynamicznych treści na stronach internetowych.

Pytanie 18

Warunek zapisany w JavaScript jest prawdziwy, gdy zmienna x przechowuje:

if ((!isNaN(x)) && (x > 0))
A. pusty napis.
B. dowolną całkowitą wartość liczbową.
C. napis.
D. dowolną dodatnią wartość liczbową.
Poprawnie wyłapałeś, że ten warunek jest prawdziwy tylko wtedy, gdy x przechowuje dodatnią wartość liczbową. Rozbijmy to na części. Funkcja isNaN(x) w JavaScript sprawdza, czy przekazany argument „nie jest liczbą” (NaN = Not a Number). Zapis z wykrzyknikiem: !isNaN(x) oznacza więc „x jest liczbą lub da się go zinterpretować jako liczbę”. Druga część warunku: (x > 0) wymusza, żeby ta wartość była większa od zera, czyli dodatnia. Operator && (AND logiczne) powoduje, że oba warunki muszą być spełnione jednocześnie. W efekcie if wykona się tylko wtedy, gdy x reprezentuje dodatnią liczbę (np. 1, 3.14, 100, 0.0001). Co ważne, w JavaScript !isNaN("5") też będzie prawdą, bo łańcuch "5" zostanie zrzutowany do liczby, więc w praktyce ten warunek przepuści zarówno typ number, jak i tekst, który da się przekonwertować na liczbę dodatnią. W realnych projektach taką konstrukcję stosuje się np. przy walidacji pól formularza: sprawdzamy, czy użytkownik podał sensowną wartość liczbową (np. cena, ilość sztuk, wiek) i czy nie jest ona ujemna albo zerowa. Z mojego doświadczenia lepiej jednak korzystać z Number.isNaN() i jawnie rzutować dane (np. const value = Number(x)), bo klasyczne isNaN ma parę „dziwnych” zachowań wynikających z automatycznych konwersji typów w JS. Mimo to logika w tym zadaniu jest typowa i zgodna z dobrymi praktykami: najpierw walidacja typu/wartości, potem dopiero dalsza logika biznesowa.

Pytanie 19

Jakiego języka można użyć do obsługi połączenia z bazą danych MySQL podczas tworzenia aplikacji internetowej?

A. PHP
B. HTML
C. XHTML
D. CSS
Do obsługi bazy danych MySQL w aplikacji internetowej używa się języka działającego po stronie serwera - najczęściej PHP. To w nim nawiązuje się połączenie (np. funkcją mysqli_connect lub przez PDO), wysyła zapytania SQL i przetwarza wyniki, zanim gotowa strona trafi do przeglądarki. HTML, XHTML i CSS odpowiadają wyłącznie za wygląd i strukturę strony. Dlatego do współpracy z MySQL służy PHP.

Pytanie 20

Aby przywrócić bazę danych o nazwie Sklep z pliku towary.sql, należy w miejsce gwiazdek wpisać nazwę użytkownika. Polecenie wygląda następująco:

mysql -u ******* -p Sklep < towary.sql
A. nazwę odzyskiwanej tabeli.
B. nazwę użytkownika.
C. adres IP bazy danych.
D. liczbę importowanych obiektów bazy.
W tym poleceniu kluczowy jest fragment „-u *******”. Przełącznik -u w kliencie mysql zawsze oznacza nazwę użytkownika bazy danych, pod której kontem chcemy się połączyć z serwerem MySQL/MariaDB. Dlatego w miejsce gwiazdek wpisujemy konkretną nazwę użytkownika, np. root, admin, albo konto utworzone specjalnie do obsługi danej aplikacji, np. sklep_user. To jest standardowa składnia narzędzia wiersza poleceń mysql: mysql -u NAZWA_UŻYTKOWNIKA -p NAZWA_BAZY < plik.sql. Opcja -p mówi, że program ma poprosić o hasło dla tego użytkownika (nie podajemy hasła wprost w poleceniu, ze względów bezpieczeństwa). Nazwa bazy danych, do której importujemy dane, pojawia się dalej, w tym przykładzie jest to Sklep. Z kolei po znaku < podajemy plik z kopią bazy, czyli skryptem SQL zawierającym instrukcje CREATE TABLE, INSERT i inne potrzebne do odtworzenia struktury i danych. W praktyce przy przywracaniu baz danych zawsze łączymy się jako użytkownik, który ma odpowiednie uprawnienia: przynajmniej do tworzenia tabel i wstawiania danych w tej bazie (INSERT, CREATE, ALTER, czasem DROP). W środowiskach produkcyjnych dobrą praktyką jest nie używać konta root, tylko dedykowanego użytkownika z ograniczonymi uprawnieniami. Moim zdaniem warto też pamiętać, że adres IP serwera bazy (opcjonalnie podawany przez -h) i port (-P) to zupełnie inne parametry niż -u. One określają, z jakim serwerem się łączymy, a -u i -p – kim się logujemy. To rozróżnienie jest bardzo ważne przy codziennej administracji i automatyzacji backupów oraz importów.

Pytanie 21

Przy założeniu, że nie istnieją inne definicje, jakie skutki będzie miało poniższe formatowanie CSS?

<style> td {padding: 30px; } </style>

<td style="padding: 10px;">Anna</td>
<td>Ewa</td>
A. marginesy wewnętrzne wszystkich komórek wyniosą 10 px
B. marginesy wewnętrzne wszystkich komórek wyniosą 30 px
C. margines wewnętrzny komórki z napisem Anna wyniesie 10 px, a z napisem Ewa – 30 px
D. margines wewnętrzny komórki z napisem Anna wyniesie 30 px, a z napisem Ewa – 10 px
Odpowiedź jest poprawna, ponieważ w kodzie HTML zastosowano bezpośrednie nadpisanie stylu dla komórki z napisem Anna. Chociaż w sekcji style zdefiniowano, że wszystkie komórki td mają padding 30px, to w przypadku komórki Anna zastosowano style inline, które mają wyższy priorytet i nadpisują ustalone wcześniej wartości. W rezultacie padding dla komórki Anna wynosi 10px. Natomiast dla pozostałych komórek, w tym komórki z napisem Ewa, obowiązuje reguła zdefiniowana globalnie w sekcji style, czyli padding wynosi 30px. Jest to przykład specyficzności w CSS, gdzie style inline są bardziej specyficzne niż style w sekcji style. W praktyce ważne jest, aby rozumieć hierarchię i specyficzność CSS, ponieważ pozwala to na skuteczne zarządzanie stylami i unikanie niezamierzonych zmian w wyglądzie strony. Dobra praktyka nakazuje unikać styli inline na rzecz zewnętrznych arkuszy stylów, co ułatwia zarządzanie kodem i czyni go bardziej czytelnym oraz łatwiejszym w utrzymaniu. Warto też stosować metodologie takie jak BEM, które pomagają w organizacji kodu CSS.

Pytanie 22

Co można powiedzieć o wyświetlonym przez witrynę tekście „test kolorów”?

<p id="p1" style="color:blue;">test kolorów</p>
<button type="button"
  onclick="document.getElementById('p1').style.color='red'">
  test</button>
A. Tuż po otwarciu strony kolor tekstu jest czerwony.
B. Naciskanie przycisku test powoduje, że kolor tekstu zmienia się na przemian z niebieskiego na czerwony.
C. Po naciśnięciu przycisku test kolor tekstu zmienia się na czerwony.
D. Po naciśnięciu przycisku test kolor tekstu pozostaje niebieski.
Odpowiedź jest poprawna ponieważ w kodzie HTML znajduje się element typu przycisk który po kliknięciu wykonuje akcję zmieniającą kolor tekstu w paragrafie z niebieskiego na czerwony Za pomocą atrybutu onclick przypisano do niego funkcję JavaScript documentgetElementById'p1'stylecolor'red' co oznacza że po naciśnięciu przycisku zmienia się styl koloru elementu o identyfikatorze p1 na czerwony Ta technika jest powszechnie stosowana do dynamicznej interakcji z użytkownikami na stronach internetowych Mając na uwadze dobre praktyki warto pamiętać o oddzieleniu logiki JavaScript od kodu HTML co zwiększa czytelność i utrzymanie kodu Można to osiągnąć poprzez przypisanie funkcji JavaScript w zewnętrznym pliku js co jest zgodne z zasadą oddzielania warstw logiki stylowania i struktury strony Zastosowanie JavaScript w taki sposób umożliwia dynamiczną zmianę stylów co jest istotne w kontekście tworzenia interaktywnych aplikacji webowych Tego typu manipulacje DOM są fundamentalne dla rozwoju nowoczesnych aplikacji internetowych co czyni je kluczowym elementem nauki i praktyki w zawodach związanych z programowaniem frontendowym

Pytanie 23

Co można powiedzieć o przedstawionym zapisie języka HTML 5?

<title>Strona o psach</title>
A. Zostanie umieszczony w treści strony, na samym czubku.
B. Stanowi jedynie informację dla robotów wyszukiwania i nie jest widoczny w przeglądarce.
C. Jest fakultatywny w kontekście HTML 5 i nie jest wymagany w dokumencie.
D. Pojawi się na karcie dokumentu w przeglądarce.
Zaznaczenie poprawnej odpowiedzi pokazuje, że to, co jest w znaczniku <title>, pojawia się na karcie w przeglądarce. To naprawdę ważny element HTML, bo informuje użytkowników, o czym jest dana strona. Zgodnie z tym, co mówi W3C, tytuł strony jest kluczowy dla SEO, gdyż wyświetla się w wynikach wyszukiwania i na zakładkach przeglądarek. Fajnie, jak tytuł jest krótki, ma kluczowe słowa, które mówią o zawartości, i przyciąga wzrok. Na przykład, jak zrobisz stronę o psach rasowych, to tytuł <title> w stylu 'Strona o psach - Poradnik dla właścicieli' nie tylko mówi, o czym będzie treść, ale też może sprawić, że lepiej widać ją w wynikach wyszukiwania. Pamiętaj, że zawartość znacznika <title> widać na górze okna przeglądarki, co ułatwia poruszanie się i znajdowanie otwartych kart.

Pytanie 24

Jakie skutki przynosi wielokrotne uruchomienie poniższego kodu PHP?

if (!isset($_COOKIE["ciastko"]) 
 $zm = 1; 
 else 
 $zm = intval($_COOKIE["ciastko"]) + 1; 
setcookie("ciastko", $zm);
A. Liczenie liczby wejść na stronę.
B. Przechowywanie informacji w ciasteczku tylko przy pierwszym otwarciu strony.
C. Pokazanie ciasteczka z wartością zmiennej.
D. Zapisywanie wartości 1 w ciasteczku przy każdym odświeżeniu strony.
Błędne odpowiedzi wskazują na zrozumienie podstawowych operacji związanych z ciasteczkami, ale nie uchwycają ich rzeczywistego zastosowania w kontekście analizy odwiedzin. Pierwsza z niepoprawnych opcji, dotycząca wyświetlenia ciasteczka z zapisaną zmienną, myli pojęcie z jego funkcją. Kod nie posiada żadnych instrukcji wyświetlania, a jedynie operuje na danych, które są zapisywane w ciasteczkach. Takie nieporozumienie jest powszechne wśród początkujących programistów, którzy mogą sądzić, że operacje na ciasteczkach automatycznie wiążą się z ich prezentacją użytkownikowi. Druga z opcji sugeruje, że ciasteczko jest ustawiane na wartość 1 przy każdym odświeżeniu strony, co jest nieprawidłowe. W rzeczywistości, wartość ciasteczka jest zwiększana z każdym odwiedzeniem, co oznacza, że wartość 1 jest przypisywana tylko przy pierwszym wejściu. To błędne zrozumienie działania ciasteczek prowadzi do mylnych konkluzji na temat ich zastosowania. Ostatnia propozycja sugeruje, że dane są zapisywane jedynie przy pierwszym uruchomieniu strony, co jest fałszywe, ponieważ aktualizacja ciasteczka zachodzi przy każdym nowym odczycie, a nie tylko przy pierwszym dostępie. Zrozumienie, jak działa mechanizm ciasteczek, jest kluczowe dla prawidłowego ich wykorzystania i analizy interakcji użytkownika z witryną.

Pytanie 25

Model barw oparty na trzech parametrach: odcień (hue), nasycenie (saturation) i jasność (brightness/value) to

A. CMYK
B. RGB
C. HSV
D. CMY
Model HSV (zwany też HSB) opisuje barwę trzema parametrami: H - odcień (hue), S - nasycenie (saturation), V/B - jasność (value/brightness). Jest intuicyjny przy ręcznym doborze kolorów. Dlatego opisywany model to HSV.

Pytanie 26

Do czego służy w MS SQL Server polecenie RESTORE DATABASE?

A. do rekonstrukcji bazy z danych buforowanych
B. do przywrócenia bazy danych z kopii zapasowej
C. do usunięcia bazy z serwera
D. do aktualizacji bazy z weryfikacją więzów integralności
Polecenie RESTORE DATABASE w MS SQL Server przywraca bazę z wcześniej utworzonej KOPII ZAPASOWEJ (pliku .bak) - odtwarza jej strukturę i dane do stanu z momentu backupu. To odpowiednik „cofnięcia” po awarii. Zapamiętaj parę: BACKUP robi kopię, RESTORE ją odtwarza.

Pytanie 27

Definicja stylu zaprezentowana w CSS odnosi się do odsyłacza, który

a:visited {color: orange;}
A. wskaźnik myszy znajduje się nad nim
B. posiada błędny adres URL
C. został wcześniej odwiedzony
D. jeszcze nie był odwiedzony
Odpowiedź "został wcześniej odwiedzony" jest prawidłowa, ponieważ definicja stylu CSS `a:visited {color: orange;}` dotyczy odsyłaczy, które zostały już odwiedzone przez użytkownika. W CSS pseudo-klasa `:visited` jest stosowana do stylizacji odsyłaczy, które prowadzą do stron, które użytkownik już otworzył. Dzięki tej możliwości, twórcy stron internetowych mogą wprowadzać różne kolory dla odwiedzonych i nieodwiedzonych linków, co pozwala na szybszą orientację użytkowników w treści strony. Na przykład, jeżeli na stronie znajduje się wiele linków, użytkownik może łatwiej zrozumieć, które z nich już kliknął, a które są nowe. Dobrą praktyką jest stosowanie kontrastowych kolorów dla odsyłaczy, aby zwiększyć ich dostępność i użyteczność. Warto również zauważyć, że przeglądarki mogą mieć różne ograniczenia dotyczące stylizacji odwiedzonych linków, co jest podyktowane względami prywatności użytkowników. Z tego powodu zaleca się, aby nie opierać funkcjonalności strony jedynie na wyglądzie odwiedzonych linków.

Pytanie 28

W języku SQL, aby wybrać wszystkie rekordy z tabeli B, w tym część wspólną z tabelą A, należy zastosować typ związku

Ilustracja do pytania
A. A RIGHT JOIN B
B. A FULL OUTER JOIN B
C. A LEFT JOIN B
D. A INNER JOIN B
Poprawnie – w tym zadaniu kluczowe jest zrozumienie, że interesuje nas **wszystko z tabeli B**, a dodatkowo – tam gdzie się da – dokładamy dane z tabeli A. Dokładnie tak działa `RIGHT JOIN` zapisany jako `A RIGHT JOIN B ON ...`. Prawa tabela w zapisie JOIN (czyli B) jest zawsze tą „obowiązkową”: dostajemy wszystkie jej wiersze, a dane z lewej (A) pojawiają się tylko tam, gdzie warunek łączenia jest spełniony. Tam gdzie dopasowania w A nie ma, kolumny z A przyjmują wartość `NULL`. To dokładnie odpowiada zielonemu obszarowi na diagramie – cała B plus część wspólna A∩B.
W praktyce taki RIGHT JOIN przydaje się np. gdy tabela B jest tabelą główną (np. `Zamowienia`), a tabela A jest pomocnicza (np. `Klienci_archiwalni`), ale z jakiegoś powodu w zapytaniu chcemy właśnie B mieć „gwarantowaną” – czyli nawet jeśli w A brakuje powiązanego rekordu, zamówienie i tak ma się pojawić w wynikach. Przykładowo:
`SELECT * FROM Klienci_archiwalni A RIGHT JOIN Zamowienia B ON A.id_klienta = B.id_klienta;`
Dobra praktyka w SQL mówi, że częściej stosuje się `LEFT JOIN`, bo jest czytelniejszy (łatwiej myśleć: „biorę wszystko z lewej”), ale logicznie RIGHT JOIN robi to samo, tylko „odwraca perspektywę”. Wiele zespołów wręcz zaleca, żeby zamiast RIGHT JOIN przepisać zapytanie tak, by użyć LEFT JOIN i zamienić kolejność tabel – ale na egzaminach i w testach warto znać oba. Moim zdaniem dobrze jest też od razu kojarzyć: `LEFT JOIN` – wszystko z lewej, `RIGHT JOIN` – wszystko z prawej, `INNER JOIN` – tylko przecięcie, `FULL OUTER JOIN` – suma zbiorów. Dzięki temu każde zadanie z diagramem Venna w SQL robi się dużo prostsze i mniej mylące.

Pytanie 29

Narzędzie zaprezentowane na ilustracji służy do

Ilustracja do pytania
A. sprawdzania zgodności witryny ze standardem HTML5
B. walidacji stylów CSS
C. walidacji kodu HTML i XHTML
D. debugowania strony internetowej
Narzędzie przedstawione na ilustracji to usługa walidacji CSS stworzona przez World Wide Web Consortium (W3C). Jego głównym celem jest sprawdzanie poprawności arkuszy stylów CSS pod kątem zgodności z obowiązującymi standardami. Walidacja CSS pozwala na identyfikację błędów składniowych oraz niepoprawnych wartości, co jest kluczowe dla zapewnienia spójności wyglądu strony w różnych przeglądarkach. Korzystanie z walidatora CSS jest częścią dobrych praktyk w procesie tworzenia stron internetowych, ponieważ poprawny kod CSS zwiększa dostępność i użyteczność serwisów. Praktycznym przykładem użycia tego narzędzia jest proces optymalizacji strony internetowej, gdzie walidator pomaga w eliminacji błędów, które mogą prowadzić do nieprzewidywalnego zachowania witryny. Dzięki walidacji możemy również upewnić się, że nasze arkusze stylów są zgodne z najnowszymi standardami, co jest istotne dla przyszłej kompatybilności serwisu.

Pytanie 30

Jakim formatem plików dźwiękowych charakteryzuje się kompresja bezstratna?

A. MP3
B. WAW
C. FLAC
D. MPEG
FLAC, czyli Free Lossless Audio Codec, to format dźwiękowy, który kompresuje pliki, ale nie traci przy tym żadnych danych. Dzięki temu jakość dźwięku pozostaje taka sama jak w oryginale, co jest super ważne dla audiofilów i profesjonalnych producentów. Wiesz, FLAC jest popularny wśród miłośników muzyki, bo pozwala na przechowywanie wysokiej jakości utworów w mniejszych plikach niż WAV, który potrafi zająć naprawdę dużo miejsca. Poza tym wiele odtwarzaczy audio i programów do edycji dźwięku obsługuje ten format, więc jest naprawdę uniwersalny. Można też dodawać metadane, czyli informacje o wykonawcy czy albumie, co jest bardzo przydatne. No i nie zapominajmy, że FLAC jest otwartym standardem, co oznacza, że każdy może z niego korzystać bez opłat – to na pewno przyczynia się do jego popularności, zarówno wśród amatorów, jak i profesjonalistów.

Pytanie 31

Którego słowa kluczowego użyć do deklaracji zmiennej w JavaScript?

A.
instanceof
B.
var
C.
variable
D.
new
Do deklaracji zmiennej w JavaScripcie służy słowo var (a w nowszym standardzie także let i const), np. var liczba = 5;. Dlatego zmienną deklaruje var.

Pytanie 32

SELECT miasto, AVG(pensja) FROM pracownicy GROUP BY miasto;
Podane zapytanie wybierze:
A. nazwy miast bez powtórzeń oraz sumę pensji dla każdego z nich.
B. nazwy miast z powtórzeniami oraz sumę pensji dla każdego z nich.
C. nazwy miast z powtórzeniami oraz średnią pensję dla każdego z nich.
D. nazwy miast bez powtórzeń oraz średnią pensję dla każdego z nich.
Zapytanie z klauzulą GROUP BY i funkcją AVG bywa mylone z sumowaniem danych lub zwykłym wybieraniem rekordów jeden po drugim. W tym konkretnym przypadku bardzo łatwo pomylić średnią z sumą albo nie zauważyć, że grupowanie usuwa powtórzenia wartości w kolumnie grupującej. Warto to uporządkować. Funkcja AVG(pensja) jest klasyczną funkcją agregującą, której zadaniem jest obliczenie średniej arytmetycznej z wartości w danej grupie rekordów. Nie dodaje ona wszystkich pensji „na kupę” tak jak SUM, tylko dzieli ich sumę przez liczbę rekordów w grupie. Jeżeli ktoś spodziewa się sumy, to patrzy bardziej w stronę SUM(pensja), a nie AVG(pensja). To jest typowy błąd: widzimy funkcję agregującą i automatycznie myślimy „to pewnie suma”, bez dokładnego przeczytania nazwy funkcji. Druga kwestia to powtórzenia miast. Klauzula GROUP BY miasto mówi silnikowi bazy danych: pogrupuj wszystkie wiersze według wartości w kolumnie miasto. W efekcie wszystkie rekordy z tym samym miastem są łączone w jedną grupę. Dla każdej takiej grupy zwracany jest dokładnie jeden wiersz wyniku. To oznacza, że w rezultacie zapytania nie ma powtórzonych nazw miast, nawet jeśli w tabeli jest tysiąc pracowników z Warszawy czy Krakowa. Częsty błąd myślowy polega na przenoszeniu intuicji z prostego SELECT bez GROUP BY, gdzie miasto faktycznie się powtarza, na zapytanie z agregacją, gdzie logika jest już inna. W odpowiedziach, które sugerują „z powtórzeniami”, ignorowane jest działanie GROUP BY. Z kolei odpowiedzi mówiące o „sumie pensji” mylą AVG z SUM, co w praktyce może prowadzić do bardzo poważnych błędów analitycznych – wyobraź sobie raport płacowy, w którym zamiast średniej ktoś pokaże sumę wynagrodzeń i na tej podstawie będzie porównywał miasta. Moim zdaniem dobrą praktyką jest zawsze czytanie zapytania fragment po fragmencie: najpierw jakie kolumny są wybierane, potem jakie funkcje agregujące są użyte, a na końcu po czym następuje grupowanie. Taka metoda pozwala uniknąć właśnie takich nieporozumień i lepiej rozumieć, co dokładnie zwróci baza danych, co jest kluczowe przy pracy z realnymi systemami produkcyjnymi.

Pytanie 33

Podczas edytowania grafiki w programie do obróbki grafiki rastrowej należy usunąć kolory z obrazu, aby uzyskać wersję w odcieniach szarości. Do osiągnięcia tego efektu można wykorzystać funkcję

A. kadrowania
B. szumu RGB
C. desaturacji
D. filtru rozmycia
Desaturacja to proces, który polega na usunięciu kolorów z obrazu, co skutkuje uzyskaniem odcieni szarości. Technika ta jest powszechnie wykorzystywana w edytorach grafiki rastrowej, takich jak Adobe Photoshop czy GIMP. Desaturacja obrazu można zrealizować na kilka sposobów, na przykład poprzez zastosowanie odpowiednich filtrów lub narzędzi. W praktyce, desaturując obraz, można uzyskać różne efekty wizualne, które podkreślają fakturę i kształt elementów, a także mogą być użyteczne w kontekście analizy zdjęć medycznych czy archiwalnych. Standardy dotyczące edycji grafiki, takie jak Adobe RGB czy sRGB, również uwzględniają desaturację jako istotny element przetwarzania kolorów. Warto zauważyć, że desaturacja nie jest tym samym co konwersja do odcieni szarości; pierwsza metoda zachowuje wartości jasności kolorów, podczas gdy druga przekształca je w jednolite odcienie szarości, co może prowadzić do utraty detali. Zastosowanie desaturacji jest szczególnie przydatne w przypadku fotografii czarno-białej, gdzie kluczowe jest zachowanie kontrastu i detali w obrazie.

Pytanie 34

Za pomocą którego protokołu można bezpiecznie (z szyfrowaniem) przesłać pliki strony internetowej na serwer WWW?

A. SFTP
B. IMAP
C. Telnet
D. POP3
SFTP (SSH File Transfer Protocol) przesyła pliki w ramach sesji SSH, dlatego cała komunikacja - zarówno dane plików, jak i login oraz hasło - jest szyfrowana. To właśnie czyni go bezpiecznym sposobem na wgranie plików witryny (HTML, CSS, JavaScript, grafik) na serwer WWW: nawet w sieci publicznej nikt postronny nie odczyta przesyłanej zawartości ani danych logowania. SFTP działa na jednym połączeniu (domyślnie port 22) i pozwala nie tylko kopiować pliki, ale też tworzyć katalogi, zmieniać nazwy czy usuwać pliki na serwerze. Dlatego przy publikacji strony, gdy zależy nam na poufności transferu, wybieramy SFTP zamiast klasycznego, nieszyfrowanego FTP.

Pytanie 35

Aby umożliwić wybór kilku opcji jednocześnie w rozwijanej liście formularza HTML, należy dodać atrybut do znacznika select

Ilustracja do pytania
A. value
B. size
C. multiple
D. disabled
Atrybut multiple w znaczniku select w HTML to super sprawa, bo dzięki niemu można zaznaczyć więcej niż jedną opcję z listy rozwijalnej. To się przydaje, jak ktoś musi wybrać kilka elementów w formularzu. Jak dodasz atrybut multiple, to przeglądarka pokazuje to jako pole do wyboru, gdzie można klikać na kilka wartości za pomocą klawiszy Ctrl albo Shift. Fajnie, że ten atrybut nie wymaga żadnych dodatkowych wartości, wystarczy, że go wrzucisz do znacznika select. To zgodne z dobrymi praktykami UX, bo pozwala na większą elastyczność i interaktywność formularzy. Co więcej, nie trzeba być programistycznym guru, żeby to wdrożyć, więc każdy może to zrobić. Używa się go w różnych aplikacjach webowych, zwłaszcza tam, gdzie zbieranie danych od użytkowników w prosty i przejrzysty sposób jest ważne.

Pytanie 36

Rodzaj programowania, w którym sekwencja poleceń (instrukcji) dostarczanych komputerowi jest traktowana jako program, określa się mianem programowania

A. logicznogo
B. imperatywnego
C. funkcyjnego
D. stanowego
Programowanie imperatywne to taki sposób myślenia w kodowaniu, gdzie dajemy komputerowi jasne instrukcje, co ma robić krok po kroku. Oznacza to, że mówimy mu, jak dojść do celu. To całkiem inne podejście niż w programowaniu funkcyjnym, gdzie raczej koncentrujemy się na funkcjach i operacjach na danych. W imperatywnym korzystamy z różnych elementów, jak zmienne, pętle czy warunki, żeby kontrolować, co się dzieje w programie. Można tu wymienić języki takie jak C, C++, Java czy Python – wszystkie są bardzo popularne w branży, zwłaszcza przy tworzeniu różnorodnych aplikacji lub systemów operacyjnych. Myślę, że połączenie programowania imperatywnego z obiektowym to świetny pomysł, bo dzięki temu łatwiej zarządzać kodem i korzystać z różnych wzorców projektowych, co zazwyczaj poprawia jego czytelność i efektywność.

Pytanie 37

Dla przedstawionego fragmentu kodu

<img src="kwiat.jpg alt="kwiat">
walidator HTML zwróci błąd, ponieważ
A. użyto nieznanego atrybutu alt
B. nie zamknięto cudzysłowu
C. użyto niewłaściwego znacznika do wyświetlenia grafiki
D. nie odnaleziono pliku kwiat.jpg
W kodzie HTML zauważyłem mały błąd - brakuje ci domknięcia cudzysłowu dla atrybutu src. Powinno to wyglądać tak: <img src="kwiat.jpg" alt="kwiat">. No, cudzysłów jest ważny, bo bez niego przeglądarka może mieć problem z odczytaniem, gdzie kończy się wartość atrybutu. To może prowadzić do różnych, nieprzewidzianych efektów przy wyświetlaniu strony. Zasady W3C mówią, że każdy atrybut powinien być poprawnie sformatowany, żeby działało to na różnych przeglądarkach i urządzeniach. Pamiętaj też o atrybucie alt - jest kluczowy dla dostępności. Właściwe użycie cudzysłowów i dbałość o format kodu też wpływają na jego czytelność, a my przecież chcemy pisać jak najlepiej.

Pytanie 38

Co oznacza polecenie:

UPDATE artykuly SET cena = cena * 0.7 WHERE kod = 2;
?
A. obniża wartość pola cena dla rekordów, gdzie kod = 2
B. dodaje pole cena z atrybutem kod
C. obniża cenę o 30% dla WSZYSTKICH artykułów
D. dodaje do tabeli nowe pola cena i kod
Polecenie UPDATE artykuly SET cena = cena * 0.7 WHERE kod = 2; mnoży dotychczasową cenę przez 0,7 (czyli obniża ją o 30%), ale TYLKO dla rekordów, gdzie kod = 2 - warunek WHERE ogranicza zmianę do wybranych wierszy. Dlatego obniża cenę dla rekordów z kod = 2.

Pytanie 39

Który sposób komentowania jednoliniowego jest dozwolony w języku JavaScript?

A.
#
B.
//
C.
!
D.
<!
W JavaScripcie komentarz jednoliniowy oznacza się przez // - reszta wiersza po tych znakach jest ignorowana. Dlatego dozwolony jest //.

Pytanie 40

Które z poniższych poleceń JavaScript zmieni kolor tekstu na niebieski w paragrafie oznaczonym w HTML?

<p id="jeden">Kwalifikacja EE.01</p>
A. document.getElementById("jeden").color = "blue";
B. document.getElementById("jeden").style.color = "blue";
C. document.getElementById("jeden").style.background-color = "blue";
D. document.getElementById("jeden").background-color = "blue";
W języku JavaScript do zmiany stylu elementu HTML używamy obiektu style powiązanego z danym elementem. W przypadku zmiany koloru tekstu w akapicie używamy właściwości color. Poprawna składnia to document.getElementById("jeden").style.color = "blue";. Funkcja getElementById pobiera element o podanym identyfikatorze w tym przypadku jeden. Następnie poprzez przypisanie wartości blue do style.color zmieniamy kolor tekstu wewnątrz tego elementu na niebieski. Jest to zgodne z praktykami programowania w JavaScript ponieważ separacja stylów od treści jest istotna dla czytelności i utrzymania kodu a użycie style pozwala na bezpośrednią modyfikację właściwości CSS. Dobre praktyki sugerują aby stylowanie umieszczać w plikach CSS jednak JavaScript daje możliwość dynamicznej modyfikacji stylów co jest użyteczne w interaktywnych aplikacjach webowych. Przykładowo podczas tworzenia dynamicznych interfejsów użytkownika możemy reagować na różne zdarzenia zmieniając style elementów w odpowiedzi na działania użytkownika co zwiększa responsywność i atrakcyjność aplikacji.