<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>CSS - Kama Kaczmarek</title>
	<atom:link href="https://kamakaczmarek.net/tag/css/feed/" rel="self" type="application/rss+xml" />
	<link>https://kamakaczmarek.net/tag/css/</link>
	<description>Strona z materiałami dla uczniów i nauczycieli</description>
	<lastBuildDate>Fri, 15 Nov 2019 08:09:45 +0000</lastBuildDate>
	<language>pl-PL</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	
	<item>
		<title>CSS &#8211; combinator selectors</title>
		<link>https://kamakaczmarek.net/css-combinator-selectors/</link>
		
		<dc:creator><![CDATA[Kama]]></dc:creator>
		<pubDate>Mon, 11 Nov 2019 17:52:02 +0000</pubDate>
				<category><![CDATA[strony www]]></category>
		<category><![CDATA[CSS]]></category>
		<guid isPermaLink="false">http://kamakaczmarek.net/?p=2008</guid>

					<description><![CDATA[<p>Ćwiczenia: Wykorzystując poniższy kod, Twoim zadaniem jest: &#60;body&#62; &#60;div&#62;to jest element - div&#60;/div&#62; &#60;p&#62;to jest element - p&#60;/p&#62; &#60;p&#62;to jest element - p&#60;/p&#62; &#60;p&#62;to jest element - p&#60;/p&#62; &#60;div&#62;to jest element - div&#60;/div&#62; &#60;/body&#62; 1) dodanie właściwości color:red; do wszystkich elementów p, które znajdują się w elemencie body. 2) dodanie właściwości color:red; do wszystkich elementów [&#8230;]</p>
<p>Artykuł <a href="https://kamakaczmarek.net/css-combinator-selectors/">CSS &#8211; combinator selectors</a> pochodzi z serwisu <a href="https://kamakaczmarek.net">Kama Kaczmarek</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<h4><strong>Ćwiczenia:</strong></h4>
<p>Wykorzystując poniższy kod, Twoim zadaniem jest:</p>
<table border="2" width="622">
<tbody>
<tr>
<td>
<pre data-listing="all"><span data-select-area="ison">&lt;body&gt;

  &lt;div&gt;to jest element - div&lt;/div&gt;
  &lt;p&gt;to jest element - p&lt;/p&gt;
  &lt;p&gt;to jest element - p&lt;/p&gt;
  &lt;p&gt;to jest element - p&lt;/p&gt;
  &lt;div&gt;to jest element - div&lt;/div&gt;

&lt;/body&gt;
</span></pre>
</td>
</tr>
</tbody>
</table>
<p>1) dodanie właściwości <code class="prettyprint lang-sql" style="font-size: 0.85em;">color:red;</code> do wszystkich elementów <code class="prettyprint lang-sql" style="font-size: 0.85em;">p</code>, które znajdują się w elemencie <code class="prettyprint lang-sql" style="font-size: 0.85em;">body</code>.</p>
<p>2) dodanie właściwości <code class="prettyprint lang-sql" style="font-size: 0.85em;">color:red;</code> do wszystkich elementów <code class="prettyprint lang-sql" style="font-size: 0.85em;">p</code>, jak również do wszystkich elementów <code class="prettyprint lang-sql" style="font-size: 0.85em;">div</code>, które znajdują się w elemencie <code class="prettyprint lang-sql" style="font-size: 0.85em;">body</code>.</p>
<p>Wykorzystując poniższy kod, Twoim zadaniem jest:</p>
<table border="2" width="622">
<tbody>
<tr>
<td>
<pre id="line1"><span class="error" title="Napotkano znacznik początkowy, ale wcześniej nie było doctype. Oczekiwano „&lt;!DOCTYPE html&gt;”.">&lt;<span class="start-tag">p</span>&gt;</span>To jest akapit, wewnątrz którego znajduje się: &lt;<span class="start-tag">i</span>&gt;pochylenie &lt;/<span class="end-tag">i</span>&gt;, 
&lt;<span class="start-tag">tt</span>&gt;dalekopis&lt;/<span class="end-tag">tt</span>&gt; oraz &lt;<span class="start-tag">b</span>&gt;pogrubienie &lt;/<span class="end-tag">b</span>&gt;... następne &lt;<span class="start-tag">b</span>&gt;pogrubienie &lt;/<span class="end-tag">b</span>&gt;. 
A to jest &lt;<span class="start-tag">i</span>&gt;&lt;<span class="start-tag">b</span>&gt;pogrubienie &lt;/<span class="end-tag">b</span>&gt; wewnąrz pochylenia &lt;/<span class="end-tag">i</span>&gt;. 
Tutaj kończy się akapit.&lt;/<span class="end-tag">p</span>&gt;</pre>
</td>
</tr>
</tbody>
</table>
<p>1) dodanie właściwości <code class="prettyprint lang-sql" style="font-size: 0.85em;">color:red; dla pogrubienie</code> jeśli wewnątrz znacznika <kbd>p</kbd> (akapit), niekoniecznie bezpośrednio, znajdzie się znacznik <kbd>b</kbd> (czyli pogrubienie tekstu)</p>
<p>2) dodanie właściwości <code class="prettyprint lang-sql" style="font-size: 0.85em;">color:red; dla pogrubienie </code>jeśli <span class="u">bezpośrednio</span> wewnątrz znacznika <kbd>p</kbd> (akapit) znajdzie się znacznik <kbd>b</kbd> (czyli pogrubienie tekstu)</p>
<p>3) dodanie właściwości <code class="prettyprint lang-sql" style="font-size: 0.85em;">color:red; dla pogrubienie </code>jeśli wewnątrz tego samego znacznika (<em>rodzica</em>), będą znajdowały się po sobie znaczniki <kbd>i</kbd> oraz <kbd>b</kbd></p>
<p>4) dodanie właściwości <code class="prettyprint lang-sql" style="font-size: 0.85em;">color:red; dla wszystkich pogrubień </code>jeśli wewnątrz tego samego znacznika (<em>rodzica</em>), będą znajdowały się znaczniki <kbd>i</kbd> oraz <kbd>b</kbd></p>
<p>Artykuł <a href="https://kamakaczmarek.net/css-combinator-selectors/">CSS &#8211; combinator selectors</a> pochodzi z serwisu <a href="https://kamakaczmarek.net">Kama Kaczmarek</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>CSS &#8211; Simple selectors</title>
		<link>https://kamakaczmarek.net/simple-selectors/</link>
		
		<dc:creator><![CDATA[Kama]]></dc:creator>
		<pubDate>Mon, 11 Nov 2019 16:59:20 +0000</pubDate>
				<category><![CDATA[strony www]]></category>
		<category><![CDATA[CSS]]></category>
		<guid isPermaLink="false">http://kamakaczmarek.net/?p=1995</guid>

					<description><![CDATA[<p>  selektor elementu &#8211; element selector to nic innego jak selektor znacznika HTML, selektorem może być np. &#60;p&#62;, &#60;h1&#62;, &#60;div&#62; i każdy inny znajdujący się w specyfikacji tego języka: h1 {color: blue;}p {text-align: left;}div {background-color: grey;}   selektor uniwersalny &#8211; universal selector &#8222;*&#8221; pozwala ustalić określone cechy dla wszystkich elementów strony niezależnie czy są to [&#8230;]</p>
<p>Artykuł <a href="https://kamakaczmarek.net/simple-selectors/">CSS &#8211; Simple selectors</a> pochodzi z serwisu <a href="https://kamakaczmarek.net">Kama Kaczmarek</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<div> </div>
<ul>
<li>
<h4><em><strong>selektor elementu &#8211; element selector<br /></strong></em></h4>
</li>
</ul>
<p>to nic innego jak selektor znacznika HTML, selektorem może być np. &lt;p&gt;, &lt;h1&gt;, &lt;div&gt; i każdy inny znajdujący się w specyfikacji tego języka:</p>
<pre class="prettyprint"><span class="cssselectorcolor"><span class="cssdelimitercolor">h1 {color: blue;}<br />p {text-align: left;}<br />div {background-color: grey;}<br /></span></span></pre>
<p> </p>
<ul>
<li>
<h4><em><strong>selektor uniwersalny &#8211; universal selector<br /></strong></em></h4>
</li>
</ul>
<p>&#8222;*&#8221; pozwala ustalić określone cechy dla wszystkich elementów strony niezależnie czy są to &lt;p&gt;, &lt;h1&gt;, &lt;div&gt; czy jakikolwiek inny:</p>
<pre class="prettyprint"><span class="cssselectorcolor"><span class="cssdelimitercolor">* {<br />  color: blue;<br />  text-align: left;<br />  background-color: black;<br />}<br /></span></span></pre>
<p>powyższy zapis oznacza, że wszystkie elementy na stronie mają mieć niebieski tekst wyrównany do lewej oraz czarne tło.</p>
<p> </p>
<ul>
<li>
<h4><em><strong>selektor</strong> grupujący &#8211; grouping selector</em></h4>
</li>
</ul>
<p>Selektor grupujący organizuje wszystkie elementy z tym samym stylem np.</p>
<pre class="prettyprint"><span class="cssselectorcolor"><span class="cssdelimitercolor">h1 {<br />  color: blue;<br />  text-align: left;<br />  background-color: black;<br />}<br /><br />p {<br />color: blue;<br />text-align: left;<br />background-color: black;<br />}<br /><br />span {<br />color: blue;<br />text-align: left;<br />background-color: black;<br />}<br /></span></span></pre>
<p>elementy h1, p i span mają w powyższym przykładzie mają takie same style, możemy więc je &#8222;scalić&#8221;, oddzielając poszczególne elementy przecinkami:</p>
<pre class="prettyprint"><span class="cssselectorcolor"><span class="cssdelimitercolor">h1, p, span {<br />  color: blue;<br />  text-align: left;<br />  background-color: black;<br />}<br /></span></span></pre>
<p> </p>
<ul>
<li>
<h4><em><strong>selektor</strong> identyfikatora &#8211; id selector</em></h4>
</li>
</ul>
<p>Selektor identyfikatora wykorzystuje atrybut id elementu HTML do wyszczególnienia konkretnego elementu.</p>
<p><span style="text-decoration: underline;"><strong><span style="color: #ff0000; text-decoration: underline;">Id elementu jest unikalny w obrębie strony, więc selektor id jest używany do wybrania jednego unikalnego elementu!</span></strong></span></p>
<p>Aby wybrać element o określonym id, należy wpisać znak skrótu (#), a następnie id elementu.</p>
<pre class="prettyprint"><span class="cssselectorcolor"><span class="cssdelimitercolor"><em>w pliku css dodajemy zapis:<br /></em><br />#niebieski {<br />  color: blue;<br />}<br /><br /><em>w pliku html dodajemy zapis:<br /></em>&lt;p <strong>id="niebieski"</strong>&gt;ta treść będzie w kolorze niebieskim&lt;/p&gt;<br /></span></span></pre>
<p>Określony przez id styl tyczy się tylko tego elementu, który ma przypisany id=&#8221;nazwa&#8221;.</p>
<p><span style="text-decoration: underline;"><span style="color: #ff0000; text-decoration: underline;"><strong>Nazwy id nie mogą zawierać polskich znaków i zaczynać się od cyfr.</strong></span></span></p>
<p> </p>
<ul>
<li>
<h4><em><strong>selektor</strong> klasy &#8211; class selector</em></h4>
</li>
</ul>
<p>Selektor klasy wykorzystuje atrybut class elementu HTML do wyszczególnienia konkretnego elementu.</p>
<p><span style="text-decoration: underline; color: #ff0000;"><strong>Klasa elementu nie jest unikalna w obrębie strony, więc selektor class może być używany wielokrotnie na stronie do różnych elementów!</strong></span></p>
<p>Aby wybrać element o określonej klasie, należy wpisać znak skrótu (.), a następnie klasę elementu.</p>
<pre class="prettyprint"><span class="cssselectorcolor"><span class="cssdelimitercolor"><em>w pliku css dodajemy zapis:<br /></em><br />.niebieski {<br />  color: blue;<br />}<br /><br /><em>w pliku html dodajemy zapis:<br /></em>&lt;p <strong>class="niebieski"</strong>&gt;ta treść będzie w kolorze niebieskim&lt;/p&gt;<br />&lt;h1 class=<strong>"niebieski"</strong>&gt;ten element też będzie miał kolor niebieski&lt;/h1&gt;<br /></span></span></pre>
<p>Określony przez class styl tyczy się tylko każdego elementu, który ma przypisany class=&#8221;nazwa&#8221;.</p>
<p><span style="text-decoration: underline;"><span style="color: #ff0000;"><strong>Nazwy klas nie mogą zawierać polskich znaków i zaczynać się od cyfr.</strong></span></span></p>
<p> </p>
<h1>Ćwiczenie:</h1>
<p>W pliku, który rozbudowujesz na lekcjach, zastosuj poznane selektory:</p>
<p>1) za pomocą selektora uniwersalnego zmień tło i kolor czcionki dla strony</p>
<p>2) używając selektora grupującego, ustaw dla znaczników list i definicji kolor czcionki (inny niż dla całości strony)</p>
<p>3) ustaw id zmieniające tło dla znacznika &lt;main&gt;, który zastosuj poniżej &lt;nav&gt; (znacznik &lt;main&gt; ma obejmować treść na stronie poza &lt;header&gt; i &lt;footer&gt;)</p>
<p>4) zastosuj klasę, która zmieni kolor czcionki w nagłówkach występujących na stronie</p>
<p>Artykuł <a href="https://kamakaczmarek.net/simple-selectors/">CSS &#8211; Simple selectors</a> pochodzi z serwisu <a href="https://kamakaczmarek.net">Kama Kaczmarek</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Kolory</title>
		<link>https://kamakaczmarek.net/kolory/</link>
		
		<dc:creator><![CDATA[Kama]]></dc:creator>
		<pubDate>Mon, 11 Nov 2019 11:38:54 +0000</pubDate>
				<category><![CDATA[strony www]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[HTML5]]></category>
		<guid isPermaLink="false">http://kamakaczmarek.net/?p=1974</guid>

					<description><![CDATA[<p>Na potrzeby tej lekcji poznacie selektor background-color, który służy do ustawiania tła elementu. Kolory definiujemy na kilka sposobów, najczęstsze z nich to: rgb, rgba /* kolor bez przezroczystości zawiera tylko 3 argumenty RGB*/ background-color: rgb(52, 117, 117); /* jeżeli chcemy dodać przezroczystość, dodajemy też 4ty argument "A", który określa stopień przezroczystości*/background-color: rgba(52, 117, 117, 0.8); [&#8230;]</p>
<p>Artykuł <a href="https://kamakaczmarek.net/kolory/">Kolory</a> pochodzi z serwisu <a href="https://kamakaczmarek.net">Kama Kaczmarek</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Na potrzeby tej lekcji poznacie selektor <em><strong>background-color</strong></em>, który służy do ustawiania tła elementu.</p>
<p>Kolory definiujemy na kilka sposobów, najczęstsze z nich to:</p>
<ul>
<li>
<h4>rgb, rgba</h4>
</li>
</ul>
<pre class="prettyprint"><span class="cssselectorcolor"><span class="cssdelimitercolor">/* kolor bez przezroczystości zawiera tylko 3 argumenty RGB*/ <br />background-color: rgb(52, 117, 117); <br /><br />/* jeżeli chcemy dodać przezroczystość, dodajemy też 4ty argument "A", który określa stopień przezroczystości*/<br />background-color: rgba(52, 117, 117, 0.8); <br /></span></span></pre>
<p> </p>
<ul>
<li>
<h4>#, hex</h4>
</li>
</ul>
<pre class="prettyprint"><span class="cssselectorcolor"><span class="cssdelimitercolor">/* kolor bez przezroczystości zawiera tylko 3 lub 6 znaków notacji hexadecymalnej #RRGGBB */ <br />background-color: #FFFFFF;<br />/*lub #RGB*/<br />background-color: #FFF; <br /><br />/* jeżeli chcemy dodać przezroczystość, dodajemy dodatkowe 2 znaki  #RRGGBBAA. Im mniejsza wartość znaków AA (z zakresu 0-9 i A-F) tym większa przezroczystość*/<br />background-color: #34757580; <br /></span></span></pre>
<p> </p>
<ul>
<li>
<h4>nazwa koloru po angielsku</h4>
</li>
</ul>
<pre class="prettyprint"><span class="cssselectorcolor"><span class="cssdelimitercolor">background-color: red;<br /></span></span></pre>
<p> </p>
<p>Czasami występuje potrzeba przeliczenia koloru z RGB na HEX i odwrotnie. Jak tego dokonać?</p>
<h5>HEX -&gt; RGB</h5>
<p>Liczbę w HEX<strong> #347575</strong>, musimy podzielić na 3 części odpowiedzialne za każdy kolor, czyli #RR | GG | BB</p>
<p>Teraz zamienimy poszczególne zapisy systemu hexadecymalnego na decymalny:</p>
<p><strong>34</strong> -&gt;<em> dziesiątki * 16 + jedności, czyli: </em>3*16+4=52</p>
<p><strong>75 -&gt;</strong><em> dziesiątki * 16 + jedności, czyli: </em>7*16+5 = 117</p>
<p><strong>75 -&gt;</strong><em> dziesiątki * 16 + jedności, czyli: </em>7*16+5 = 117</p>
<p>i otrzymujemy liczbę w rgb(52, 117, 117).</p>
<h5>RGB -&gt; HEX</h5>
<p>Liczbę w <strong>rgb(52, 117, 117)</strong>, musimy zamienić na każdy kolor w hex, czyli #RR | GG | BB</p>
<p>Teraz zamienimy poszczególne zapisy systemu decymalnego na hexadecymalny:</p>
<p><strong>52</strong> -&gt;</p>
<p>52/16=<strong>3</strong>,25<em> -&gt; bierzemy całości z wyniku i mnożymy przez 16<br /></em></p>
<p><span style="color: #ff6600;"><strong>3</strong></span>*16=48</p>
<p>52-48=<span style="color: #3366ff;"><strong>4</strong></span></p>
<p>pierwsza para liczb to <span style="color: #ff6600;"><strong>3</strong></span><span style="color: #3366ff;"><strong>4</strong></span></p>
<p><strong>117</strong> -&gt;</p>
<p>117/16=<strong>7</strong>,31<em> -&gt; bierzemy całości z wyniku i mnożymy przez 16<br /></em></p>
<p><span style="color: #ff9900;"><strong>7</strong></span>*16=112</p>
<p>117-112=<span style="color: #3366ff;"><strong>5</strong></span></p>
<p>druga i trzecia para liczb to <strong><span style="color: #ff9900;">7</span><span style="color: #3366ff;">5</span></strong></p>
<p>i otrzymujemy liczbę w hex #347575.</p>
<p>Artykuł <a href="https://kamakaczmarek.net/kolory/">Kolory</a> pochodzi z serwisu <a href="https://kamakaczmarek.net">Kama Kaczmarek</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>CSS &#8211; kaskadowość i dziedziczenie</title>
		<link>https://kamakaczmarek.net/css-omowienie-i-wstawianie-2/</link>
		
		<dc:creator><![CDATA[Kama]]></dc:creator>
		<pubDate>Mon, 21 Oct 2019 18:35:15 +0000</pubDate>
				<category><![CDATA[strony www]]></category>
		<category><![CDATA[CSS]]></category>
		<guid isPermaLink="false">http://kamakaczmarek.net/?p=1945</guid>

					<description><![CDATA[<p>  KASKADOWOŚĆ STYLÓW Kaskadowość stylów określa pierwszeństwo w oddziaływaniu na te same elementy strony stylów z różnych źródeł. Jeśli w dokumencie znajduje się kilka źródeł stylów, pierwszeństwo mają te, które znajdują się &#8222;bliżej&#8221; formatowanego elementu. Oddziaływanie stylów z arkuszy zewnętrznych może być modyfikowane przez style zdefiniowane w nagłówku dokumentu, to z kolei może być zmieniane [&#8230;]</p>
<p>Artykuł <a href="https://kamakaczmarek.net/css-omowienie-i-wstawianie-2/">CSS &#8211; kaskadowość i dziedziczenie</a> pochodzi z serwisu <a href="https://kamakaczmarek.net">Kama Kaczmarek</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p> </p>
<h4><strong>KASKADOWOŚĆ STYLÓW</strong></h4>
<p><dfn>Kaskadowość stylów</dfn> określa pierwszeństwo w oddziaływaniu na te same elementy strony stylów z różnych źródeł.</p>
<p>Jeśli w dokumencie znajduje się kilka źródeł stylów, pierwszeństwo mają te, które znajdują się &#8222;bliżej&#8221; formatowanego elementu. Oddziaływanie stylów z arkuszy zewnętrznych może być modyfikowane przez style zdefiniowane w nagłówku dokumentu, to z kolei może być zmieniane przez style zdefiniowane bezpośrednio w ciele dokumentu (inline). Zatem priorytet ważności stylów (pierwszeństwo) wyglądałby tak:</p>
<ol>
<li>Styl lokalny (inline)</li>
<li>Rozciąganie stylu (SPAN)</li>
<li>Wydzielone bloki (DIV)</li>
<li>Wewnętrzny arkusz stylów</li>
<li>Import stylów do wewnętrznego arkusza</li>
<li>Zewnętrzny arkusz stylów</li>
<li>Import stylów do zewnętrznego arkusza</li>
<li>(Atrybuty prezentacyjne HTML &#8211; np. align=&#8221;&#8230;&#8221;, bgcolor=&#8221;&#8230;&#8221;, color=&#8221;&#8230;&#8221;, height=&#8221;&#8230;&#8221;, width=&#8221;&#8230;&#8221; i inne)</li>
</ol>
<p>Style o wyższym priorytecie ważności (na początku listy) mają pierwszeństwo w modyfikowaniu elementów dokumentu. Style niżej w hierarchii mogą zmienić formatowanie jakiegoś elementu, tylko jeśli style o wyższym priorytecie nie dotyczą tego konkretnego elementu. Na szczególną uwagę zasługuje również fakt, że style CSS z dowolnego źródła zawsze są ważniejsze niż atrybuty prezentacyjne przypisane elementom bezpośrednio w kodzie HTML, mimo iż wydawać by się mogło, że powinna tutaj zachodzić zasada taka jak w przypadku stylu lokalnego.</p>
<p><em>Kaskadowość</em> stylów pozwala zatem pracować z kilkoma źródłami stylów, bez obawy o wystąpienie konfliktów. Takie rozwiązanie jest bardzo wygodne, ponieważ możemy np. zdefiniować ogólny wygląd naszego serwisu w zewnętrznym arkuszu i dodatkowo zmienić nieco wybrane strony poprzez wewnętrzny arkusz, a jeśli zajdzie konieczność zmodyfikować pojedyncze elementy za pomocą stylu lokalnego.</p>
<p> </p>
<h4 id="lamanie_kaskadowosci"><strong>Łamanie kaskadowości</strong></h4>
<p>Można świadomie zmienić zasady <em>kaskadowości</em>. Służy do tego polecenie !important. Jeżeli pojawi się ono w deklaracji stylu po wartości cechy, spowoduje to, że taka cecha będzie miała pierwszeństwo przed innymi, nawet jeśli ma niższy priorytet. Natomiast inne cechy takiej deklaracji będą interpretowane normalnie, chyba że również przy nich postawimy !important. Nie należy jednak przesadzać ze stosowaniem tej metody, ponieważ jawnie łamie ona zasadę kaskadowości i po jakimś czasie może Ci znacznie utrudnić analizę sposobu formatowania elementów.</p>
<p class="przyklad"><strong>Przykład:</strong></p>
<p>Gdyby w arkuszu stylów tej strony została umieszczona następująca reguła:</p>
<pre class="prettyprint"><span class="cssselectorcolor"><span class="cssdelimitercolor">h6 { color: blue <b>!important</b>; background-color: green }</span></span></pre>
<p>to pomimo wpisania następującego stylu inline (który ma pierwszeństwo przed arkuszami stylów)</p>
<pre class="prettyprint"><span class="cssselectorcolor"><span class="cssdelimitercolor">&lt;h6 style="<b>color: red; background-color: yellow</b>"&gt; <br />    Ten tytuł nie jest napisany czcionką koloru czerwonego, lecz  <br />    niebieskiego, mimo wstawienia stylu inline. Natomiast tło <br />    pozostaje żółte. <br />&lt;/h6&gt;</span></span></pre>
<p>otrzymalibyśmy tytuł koloru niebieskiego (blue) jednak nadal na żółtym (yellow) tle.</p>
<p> </p>
<h3><strong>Drzewo dokumentu i dziedziczenie </strong></h3>
<p>Drzewo elementów umieszczonych w dokumencie źródłowym. Każdy element w takim drzewie ma dokładnie jednego rodzica, oprócz elementu podstawowego, czyli <strong>korzenia</strong> drzewa (<strong>root</strong>).</p>
<p>Jeżeli nasza strona ma następującą strukturę:</p>
<pre class="prettyprint"><span class="cssselectorcolor"><span class="cssdelimitercolor">&lt;html&gt; <br />  &lt;head&gt; <br />    &lt;title&gt;...&lt;/title&gt; <br />  &lt;/head&gt; <br />  &lt;body&gt; <br />    &lt;h1&gt;...&lt;/h1&gt; <br />    &lt;p&gt;...&lt;/p&gt; <br />    &lt;table&gt; <br />      &lt;tr&gt; <br />        &lt;td&gt;...&lt;/td&gt; <br />        &lt;td&gt;...&lt;/td&gt; <br />      &lt;/tr&gt;<br />      &lt;tr&gt; <br />        &lt;td&gt;...&lt;/td&gt; <br />        &lt;td&gt;...&lt;/td&gt; <br />      &lt;/tr&gt; <br />    &lt;/table&gt; <br />  &lt;/body&gt; <br />&lt;/html&gt;</span></span></pre>
<p>to jej <strong>drzewo</strong> wygląda następująco:</p>
<p><img decoding="async" src="http://www.kurshtml.edu.pl/pliki/drzewo.gif" alt="Drzewo dokumentu" /></p>
<p>gdzie:</p>
<ul>
<li>Element <code class="prettyprint lang-sql" style="font-size: 0.85em;">TABLE</code> jest dzieckiem elementu <code class="prettyprint lang-sql" style="font-size: 0.85em;">BODY</code>.</li>
<li>Element <code class="prettyprint lang-sql" style="font-size: 0.85em;">TABLE</code> jest potomkiem elementu <code class="prettyprint lang-sql" style="font-size: 0.85em;">HTML</code> oraz <code class="prettyprint lang-sql" style="font-size: 0.85em;">BODY</code>.</li>
<li>Element <code class="prettyprint lang-sql" style="font-size: 0.85em;">TABLE</code> jest rodzicem dwóch elementów <code class="prettyprint lang-sql" style="font-size: 0.85em;">TR</code>.</li>
<li>Element <code class="prettyprint lang-sql" style="font-size: 0.85em;">TABLE</code> jest przodkiem czterech elementów <code class="prettyprint lang-sql" style="font-size: 0.85em;">TD</code> oraz dwóch <code class="prettyprint lang-sql" style="font-size: 0.85em;">TR</code>.</li>
<li>Element <code class="prettyprint lang-sql" style="font-size: 0.85em;">TABLE</code> jest bratem elementów <code class="prettyprint lang-sql" style="font-size: 0.85em;">H1</code> oraz <code class="prettyprint lang-sql" style="font-size: 0.85em;">P</code>.</li>
<li>Elementy <code class="prettyprint lang-sql" style="font-size: 0.85em;">H1</code> oraz <code class="prettyprint lang-sql" style="font-size: 0.85em;">P</code> są braćmi poprzedzającymi elementu <code class="prettyprint lang-sql" style="font-size: 0.85em;">TABLE</code>.</li>
<li>Element <code class="prettyprint lang-sql" style="font-size: 0.85em;">TABLE</code> jest bratem następującym elementów <code class="prettyprint lang-sql" style="font-size: 0.85em;">H1</code> oraz <code class="prettyprint lang-sql" style="font-size: 0.85em;">P</code>.</li>
<li>Element <code class="prettyprint lang-sql" style="font-size: 0.85em;">TABLE</code> jest elementem poprzedzającym elementu <code class="prettyprint lang-sql" style="font-size: 0.85em;">TR</code> oraz <code class="prettyprint lang-sql" style="font-size: 0.85em;">TD</code>.</li>
<li>Element <code class="prettyprint lang-sql" style="font-size: 0.85em;">TABLE</code> jest elementem następującym elementu <code class="prettyprint lang-sql" style="font-size: 0.85em;">BODY</code> oraz <code class="prettyprint lang-sql" style="font-size: 0.85em;">HTML</code>.</li>
</ul>
<p>Elementy leżące niżej w hierarchii drzewa dokumentu, zawierają się <span class="u">wewnątrz</span> znaczników nadrzędnych, np. znaczniki <code class="prettyprint lang-sql" style="font-size: 0.85em;">&lt;body&gt;</code> oraz <code class="prettyprint lang-sql" style="font-size: 0.85em;">&lt;/body&gt;</code> muszą być umiejscowione pomiędzy znacznikami <code class="prettyprint lang-sql" style="font-size: 0.85em;">&lt;html&gt;</code> i <code class="prettyprint lang-sql" style="font-size: 0.85em;">&lt;/html&gt;,</code> które są nadrzędne dla wszystkich innych (<strong>root</strong>).</p>
<p> </p>
<p>Z drzewem dokumentu związana jest własność <dfn>dziedziczności stylów</dfn>. Polega ona na tym, że elementy leżące niżej w hierarchii (potomkowie), jeśli nie zaznaczymy inaczej, dziedziczą (przejmują) atrybuty formatowania, które zostały nadane ich przodkom.</p>
<p> </p>
<p>Właściwości, które są dziedziczone:</p>
<ul>
<li><code class="prettyprint lang-sql" style="font-size: 0.85em;">color</code></li>
<li><code class="prettyprint lang-sql" style="font-size: 0.85em;">font-family</code></li>
<li><code class="prettyprint lang-sql" style="font-size: 0.85em;">font-size</code></li>
<li><code class="prettyprint lang-sql" style="font-size: 0.85em;">font-style</code></li>
<li><code class="prettyprint lang-sql" style="font-size: 0.85em;">font-weight</code></li>
<li><code class="prettyprint lang-sql" style="font-size: 0.85em;">text-align</code></li>
</ul>
<p>Właściwości, które nie są dziedziczone:</p>
<ul>
<li><code class="prettyprint lang-sql" style="font-size: 0.85em;">background</code></li>
<li><code class="prettyprint lang-sql" style="font-size: 0.85em;">border</code></li>
<li><code class="prettyprint lang-sql" style="font-size: 0.85em;">margin</code></li>
<li><code class="prettyprint lang-sql" style="font-size: 0.85em;">padding</code></li>
<li><code class="prettyprint lang-sql" style="font-size: 0.85em;">width</code></li>
<li><code class="prettyprint lang-sql" style="font-size: 0.85em;">height</code></li>
</ul>
<p>Artykuł <a href="https://kamakaczmarek.net/css-omowienie-i-wstawianie-2/">CSS &#8211; kaskadowość i dziedziczenie</a> pochodzi z serwisu <a href="https://kamakaczmarek.net">Kama Kaczmarek</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>CSS &#8211; omówienie i wstawianie</title>
		<link>https://kamakaczmarek.net/css-omowienie-i-wstawianie/</link>
		
		<dc:creator><![CDATA[Kama]]></dc:creator>
		<pubDate>Mon, 14 Oct 2019 15:44:28 +0000</pubDate>
				<category><![CDATA[strony www]]></category>
		<category><![CDATA[CSS]]></category>
		<guid isPermaLink="false">http://kamakaczmarek.net/?p=1931</guid>

					<description><![CDATA[<p>CSS &#8211; Cascading Style Sheets (z ang. Kaskadowe Arkusze Stylów) jest to specjalny język opracowany tylko w jednym celu: stworzenie możliwości bardziej elastycznego zarządzania sposobem formatowania (wyglądem) elementów znajdujących się w dokumentach elektronicznych. CSS nie istnieje samodzielnie i jest ściśle powiązany z HTML, pozwala na określenie wyglądu poszczególnych elementów na stronie. Jak budujemy style: selektor [&#8230;]</p>
<p>Artykuł <a href="https://kamakaczmarek.net/css-omowienie-i-wstawianie/">CSS &#8211; omówienie i wstawianie</a> pochodzi z serwisu <a href="https://kamakaczmarek.net">Kama Kaczmarek</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<h1>CSS &#8211; Cascading Style Sheets (z ang. Kaskadowe Arkusze Stylów)</h1>
<p>jest to specjalny język opracowany tylko w jednym celu: stworzenie możliwości bardziej elastycznego zarządzania sposobem formatowania (wyglądem) elementów znajdujących się w dokumentach elektronicznych.</p>
<p>CSS nie istnieje samodzielnie i jest ściśle powiązany z HTML, pozwala na określenie wyglądu poszczególnych elementów na stronie.</p>
<p>Jak budujemy style:</p>
<pre class="prettyprint">selektor <br />{<br />    deklaracja;<br />    deklaracja;<br />    ...<br />    deklaracja;<br />}</pre>
<p> </p>
<p>Teraz kilka słów na temat wstawiania stylów. Możemy to robić lokalnie lub z zewnętrznego pliku.</p>
<h4><strong>STYL LOKALNY</strong></h4>
<p>Wewnątrz znacznika &lt;body&gt; znajdują się elementy, które możemy formatować bezpośrednio w tagu, np:</p>
<p> </p>
<p><img fetchpriority="high" decoding="async" class="aligncenter size-full wp-image-1938" src="https://kamakaczmarek.net/wp-content/uploads/styl-liniowy.png" alt="" width="792" height="184" srcset="https://kamakaczmarek.net/wp-content/uploads/styl-liniowy.png 792w, https://kamakaczmarek.net/wp-content/uploads/styl-liniowy-300x70.png 300w, https://kamakaczmarek.net/wp-content/uploads/styl-liniowy-768x178.png 768w" sizes="(max-width: 792px) 100vw, 792px" /></p>
<p> </p>
<pre class="prettyprint">&lt;p <b>style="color: #ff0000;"</b>&gt;To jest jakiś tekst&lt;/p&gt;</pre>
<p>Po dowolnym znaczniku (&lt;p&gt;, &lt;b&gt;, &lt;ul&gt; i innych dostępnych w HTML) wstawiamy <b>style=&#8221;&#8230;&#8221;, </b>a wewnątrz wpisujemy <strong>cechę</strong> i jej <strong>wartość</strong> np. kolor akapitu to &#8222;color&#8221;, czcionka to &#8222;font&#8221;. Cecha to odpowiednik atrybutu w HTML. Zbiór cech dla arkuszy stylów znajdziecie w <a href="https://developer.mozilla.org/pl/docs/Web/CSS/CSS_Reference" target="_blank" rel="noopener noreferrer">specyfikacji CSS. </a>W powyższym przykładzie cecha to <strong>color</strong>, następnie występuje znak &#8222;<strong>:</strong>&#8221; oraz wartość, czyli #ff0000 całość zakończona znakiem &#8222;<strong>;</strong>&#8222;. <strong><br /></strong></p>
<p>Jeżeli danemu elementowi chcemy nadać kilka cech, wpisujemy je po sobie tzn.:</p>
<pre class="prettyprint">&lt;p <strong>style="color: #ff0000; font: 12px bold italic Verdana, Arial, sans-serif;</strong>"&gt; 
To jest jakiś tekst&lt;/p&gt;</pre>
<p>po nadaniu cechy <strong>color </strong>i po średniku wstawiamy kolejną cechę dla czcionki czyli <strong>font</strong>, a w środku font kilka wartości dla cechy oddzielane spacją. Zwróć uwagę, że część wartości została oddzielona przecinkiem, dzieje się tak w momencie podawania alternatywy dla danej wartości, czyli:</p>
<ul>
<li><strong>12px </strong>&#8211; podajemy wielkość czcionki</li>
<li><strong>bold </strong>&#8211; ma być pogrubiona</li>
<li><strong>italic </strong>&#8211; oraz pochylona</li>
<li><strong>Verdana, Arial, sans-serif; </strong>&#8211; i styl ma być Verdana, ale jeżeli użytkownik nie ma czcionki Verdana to zostanie użyty Arial o kroju sans-serif.</li>
</ul>
<p>Styl możemy rozciągnąć na kilka elementów. Stosujemy do tego znacznik <strong>&lt;span&gt;</strong></p>
<pre class="prettyprint">&lt;<strong>span </strong>style="color: #ff0000; font: 12px bold italic Verdana, Arial, sans-serif;"&gt; 
    &lt;b&gt;To jest jakiś tekst&lt;/b&gt;
    &lt;p&gt;to jest jakić akapit&lt;/p&gt;
&lt;/<strong>span</strong>&gt;</pre>
<p>Alternatywą do &lt;span&gt; służącą do obejmowania formatowaniem większych zakresów jest <strong>&lt;div&gt;</strong></p>
<pre class="prettyprint">&lt;div style="background-color: yellow"&gt;
	&lt;span style="color: red"&gt;
		&lt;b&gt;To jest pogrubienie w ramach DIV oraz SPAN i dlatego jest czerwone 
                   na żółtym tle&lt;/b&gt;,
		a to jest zwykły tekst - również wewnątrz DIV i SPAN.
	&lt;/span&gt;
	To jest zwykły tekst, ale tylko wewnątrz DIV - dlatego nie jest czerwony,  
        ale ma żółte tło.
	&lt;p&gt;A to jest akapit (element blokowy) w ramach DIV.&lt;/p&gt;
&lt;/div&gt;</pre>
<p><em>element blokowy</em> (DIV) może zawierać wewnątrz siebie zwykły tekst, jak również inne elementy blokowe. Został on pomyślany do tworzenia obszerniejszych struktur. Natomiast elementy wyświetlanie <em>w linii</em> (SPAN) nie mogą zawierać elementów blokowych, ale mogą inne elementy wyświetlane w linii oraz zwykły tekst. Wewnątrz DIV można oczywiście wpisać również SPAN.</p>
<p> </p>
<h4><strong>WEWNĘTRZNY ARKUSZ STYLÓW</strong></h4>
<p> </p>
<p><img decoding="async" class="aligncenter size-full wp-image-1939" src="https://kamakaczmarek.net/wp-content/uploads/styl-zewn.png" alt="" width="792" height="184" /></p>
<p> </p>
<pre class="prettyprint">&lt;head&gt;
	(...)
<b>&lt;style type="text/css"&gt;
/* &lt;![CDATA[ */
<var>selektor</var> { <var>cecha</var>: <var>wartość</var>; <var>cecha2</var>: <var>wartość2</var>... }
<var>selektor2</var> { <var>cecha</var>: <var>wartość</var>; <var>cecha2</var>: <var>wartość2</var>... }
(...)
/* ]]&gt; */
&lt;/style&gt;</b>
	(...)
&lt;/head&gt;</pre>
<p>Wewnętrzny arkusz stylów wstawia się zawsze w części nagłówkowej dokumentu (pomiędzy znacznikami <code class="prettyprint lang-sql" style="font-size: 0.85em;">&lt;head&gt;</code> a <code class="prettyprint lang-sql" style="font-size: 0.85em;">&lt;/head&gt;</code>). Można go zastosować, gdy elementy które pragniemy poddać formatowaniu, występują wielokrotnie na stronie i wszystkim chcemy nadać takie same atrybuty (inne niż domyślne). Na przykład chcemy, aby wszystkie wykazy miały automatycznie kolor niebieski. Wystarczy wpisać odpowiednią deklarację stylów w arkuszu (w treści nagłówkowej) i nie trzeba już nic dopisywać przy samym elemencie.</p>
<p> </p>
<h4><strong>ZEWNĘTRZNY ARKUSZ STYLÓW<br /></strong></h4>
<pre class="prettyprint">&lt;head&gt;
	(...)
	<b>&lt;link rel="Stylesheet" type="text/css" href="<var>style.css</var>" /&gt;</b>
	(...)
&lt;/head&gt;</pre>
<p>Zewnętrzny arkusz stylów wstawia się zawsze w części nagłówkowej dokumentu (pomiędzy znacznikami <code class="prettyprint lang-sql" style="font-size: 0.85em;">&lt;head&gt;</code> a <code class="prettyprint lang-sql" style="font-size: 0.85em;">&lt;/head&gt;</code>). Możliwość wstawiania zewnętrznego arkusza jest chyba jedną z największych zalet stosowania stylów. Pozwala nam to zdefiniować takie samo formatowanie określonych elementów <span class="u">na wielu stronach jednocześnie</span>. Dzięki temu, za pomocą tego jednego arkusza, wszystkie nasze strony w obrębie całego serwisu mogą mieć pewne wspólne cechy.</p>
<p>Należy stworzyć oddzielny plik &#8222;nazwa.css&#8221;, w którym określamy style, a w nagłówku dokumentu podajemy jedynie ścieżkę do tego pliku.</p>
<p>Przykładowy plik css:</p>
<pre class="prettyprint"><span class="cssselectorcolor">p <span class="cssdelimitercolor">{</span><span class="csspropertycolor">text-align<span class="csspropertyvaluecolor"><span class="cssdelimitercolor">:</span> center<span class="cssdelimitercolor">; </span></span>color<span class="csspropertyvaluecolor"><span class="cssdelimitercolor">:</span> red<span class="cssdelimitercolor">;</span></span></span><span class="cssdelimitercolor">}<br />h1 {<span class="csspropertycolor"><br />  text-align<span class="csspropertyvaluecolor">: center;</span><br />  color<span class="csspropertyvaluecolor">: red;</span><br /></span>}<br />h2 {<span class="csspropertycolor"><br />  text-align<span class="csspropertyvaluecolor">: center;</span><br />  color<span class="csspropertyvaluecolor">: red;</span><br /></span>}<br /></span></span></pre>
<h1> </h1>
<h1>Ćwiczenie:</h1>
<p>Na podstawie ćwiczenia z tematu o znacznikach semantycznych (<a href="https://kamakaczmarek.net/wp-content/uploads/znaczniki_semantyczne.html" target="_blank" rel="noopener noreferrer">przykładowe rozwiązanie</a>), sformatuj nagłówki dokumentu nadając im własności: <span class="cssselectorcolor"><span class="cssdelimitercolor"><span class="csspropertycolor">text-align<span class="csspropertyvaluecolor">: center; </span>color<span class="csspropertyvaluecolor">: green; oraz znaczniki semantyczne nadając im tło: background-color: lightblue;.</span></span></span></span></p>
<p>Wykonaj ćwiczenie tworząc styl liniowy, wewnętrzny i zewnętrzny.</p>
<p>Artykuł <a href="https://kamakaczmarek.net/css-omowienie-i-wstawianie/">CSS &#8211; omówienie i wstawianie</a> pochodzi z serwisu <a href="https://kamakaczmarek.net">Kama Kaczmarek</a>.</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
