Pocięcie i zakodowanie strony WWW – intblog

16 marca, 2012 w kategoriach: Web developing, HTML, xHTML, Pierwsze kroki

6,015 6
Dane:
  • Czas pracy: 30-60 minut
  • Poziom: Podstawowy
Opis:

W tym tutorialu potniemy i zakodujemy layout który przygotowałem specjalnie dla tego poradnika.

Pokaż/Ukryj wszystko

Cięcie PSD i kodowanie do HTML & CSS

Witam :)

W tym tutorialu postaram się powiększyć waszą wiedzę w zakresie kodowaniu. Zakoduje prostą stronę WWW, którą wcześniej zaprojektowałem.

Projekt graficzny Alt layout

DEMO: http://imichal.ugu.pl/tutorial24/index.html#1


Wydawnictwo Strefa Kursów

Na początku utworze sobie nowy folder a w nim:
– index.html
– folder o nazwie CSS, a w nim plik: style.css
– folder o nazwie JS (na razie nic tam nie będzie)
– folder o nazwie IMG – tam będziemy trzymali wszystkie obrazki

Alt folders

To cięcia naszego layoutu będziemy używać tego narzędzia:
Alt narzedzie

przybliżamy lupą i zaznaczamy nasze logo: Alt tnimy
najlepiej od razu kliknąć na zaznaczony obszar prawym przyciskiem myszy i wybrać ‚Edycja opcji plasterka..’ w polu nazwa wpisujemy nazwę obrazka np. logo, zatwierdzamy klikając ‚OK’

Następnie robimy to samo z menu Alt imenu

Mniej więcej tak powinna wyglądać całość:
Alt calosc pocie
jak można zauważyć nie zaznaczyłem tego: Alt krop
zrobimy to trochę inaczej.. mianowicie tak: Alt Bez nazdsawy-1 będziemy mogli wtedy w CSS przesunąć obrazek poprzez background-position. Zapisujemy go.

Aby zapisać wszystkie zaznaczone elementy użyjemy kombinacji klawiszy ALT+SHIFT+CTRL+S
Wyskoczy nam takie okienko: Alt Bez nazwy-2
zaznaczamy wszystkie plasterki z przytrzymanym ALT+SHIFT i zapisujemy :)

To wszystko w cięciu. Teraz będziemy kodować..

OK, a więc początek kodu. będziemy używać XHTML Strict. Te linijki powiadamiają przeglądarkę jaką „gramatykę” używamy

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pl" lang="pl">

Kod ten powinien być na pierwszym miejscu we wszystkich plikach HTML. Brak takiej definicji spowoduje nieudaną walidację.

Następnie określamy podstawowe informacje o naszej stronie, np. tytuł, opis

<head>
<meta name="description" content="Przykładowy opis" />
<meta name="keywords" content="Słowa kluczowe" />
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<meta http-equiv="content-language" content="pl" />
<title>Przykładowy tytuł</title>
<link rel="stylesheet" href="css/style.css" media="screen" type="text/css" />
</head>

Teraz możemy zacząć kodować stronę.

Na początku oczywiście będzie Header

<div id="header">
<div class="center">
<h1><a href="#">intblog</a></h1>

center to div który będzie nam wyśrodkował stronę oraz nadawał jej szerokość 990px o czym dowiecie się w pliku CSS

napisze teraz menu oparte o listę ul

<div id="menu">
<ul>
<li><a href="#"><img src="img/home.jpg" alt="tekst alternatywny, tak samo trzeba zrobić z pozostałymi obrazkami /></a></li>
<li><a href="#"><img src="img/forum.jpg" alt /></a></li>
<li><a href="#"><img src="img/nowe-posty.jpg" alt /></a></li>
<li><a href="#"><img src="img/nowosci.jpg" alt /></a></li>
<li><a href="#"><img src="img/recenzje.jpg" alt /></a></li>
<li><a href="#"><img src="img/kontakt.jpg" alt /></a></li>
</ul>
</div>

okej menu już jest.
zamykamy div header oraz center

</div>
</div>

Następnie tworzymy SLIDESHOW
stąd można go pobrać: http://slidesjs.com/
możemy w nim umieszczać obrazki jak i zwykły tekst

<div id="showcase">
<div id="slides">
<div class="slides_container">
<div class="slide">
<div class="show1">
Przykładowa treść
</div>
</div>
<div class="slide">
<div class="show1">
<img src="img/slideshow-obrazek1.jpg" alt />
</div>
</div>
<div class="slide">
<div class="show1">
Druga przykładowa treść
</div>
</div>
</div>
</div>
</div>

aby slideshow działał poprawnie należy:
a) po linijce w sekcji head

<link rel="stylesheet" href="css/style.css" media="screen" type="text/css" />

dodać:

<script src="js/slides.min.jquery.js"></script>
<script>
$(function(){
// Set starting slide to 1
var startSlide = 1;
// Get slide number if it exists
if (window.location.hash) {
startSlide = window.location.hash.replace('#','');
}
// Initialize Slides
$('#slides').slides({
preload: true,
preloadImage: 'img/loading.gif',
generatePagination: true,
play: 5000,
pause: 2500,
hoverPause: true,
// Get the starting slide
start: startSlide,
animationComplete: function(current){
// Set the slide number as a hash
window.location.hash = '#' + current;
}
});
});
</script>

b) do folderu ‚JS’ utworzyć plik slides.min.jquery.js a w nim dodać to:

/*
* Slides, A Slideshow Plugin for jQuery
* Intructions: http://slidesjs.com
* By: Nathan Searles, http://nathansearles.com
* Version: 1.1.9
* Updated: September 5th, 2011
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
(function(a){a.fn.slides=function(b){return b=a.extend({},a.fn.slides.option,b),this.each(function(){function w(g,h,i){if(!p&&o){p=!0,b.animationStart(n+1);switch(g){case"next":l=n,k=n+1,k=e===k?0:k,r=f*2,g=-f*2,n=k;break;case"prev":l=n,k=n-1,k=k===-1?e-1:k,r=0,g=0,n=k;break;case"pagination":k=parseInt(i,10),l=a("."+b.paginationClass+" li."+b.currentClass+" a",c).attr("href").match("[^#/]+$"),k>l?(r=f*2,g=-f*2):(r=0,g=0),n=k}h==="fade"?b.crossfade?d.children(":eq("+k+")",c).css({zIndex:10}).fadeIn(b.fadeSpeed,b.fadeEasing,function(){b.autoHeight?d.animate({height:d.children(":eq("+k+")",c).outerHeight()},b.autoHeightSpeed,function(){d.children(":eq("+l+")",c).css({display:"none",zIndex:0}),d.children(":eq("+k+")",c).css({zIndex:0}),b.animationComplete(k+1),p=!1}):(d.children(":eq("+l+")",c).css({display:"none",zIndex:0}),d.children(":eq("+k+")",c).css({zIndex:0}),b.animationComplete(k+1),p=!1)}):d.children(":eq("+l+")",c).fadeOut(b.fadeSpeed,b.fadeEasing,function(){b.autoHeight?d.animate({height:d.children(":eq("+k+")",c).outerHeight()},b.autoHeightSpeed,function(){d.children(":eq("+k+")",c).fadeIn(b.fadeSpeed,b.fadeEasing)}):d.children(":eq("+k+")",c).fadeIn(b.fadeSpeed,b.fadeEasing,function(){a.browser.msie&&a(this).get(0).style.removeAttribute("filter")}),b.animationComplete(k+1),p=!1}):(d.children(":eq("+k+")").css({left:r,display:"block"}),b.autoHeight?d.animate({left:g,height:d.children(":eq("+k+")").outerHeight()},b.slideSpeed,b.slideEasing,function(){d.css({left:-f}),d.children(":eq("+k+")").css({left:f,zIndex:5}),d.children(":eq("+l+")").css({left:f,display:"none",zIndex:0}),b.animationComplete(k+1),p=!1}):d.animate({left:g},b.slideSpeed,b.slideEasing,function(){d.css({left:-f}),d.children(":eq("+k+")").css({left:f,zIndex:5}),d.children(":eq("+l+")").css({left:f,display:"none",zIndex:0}),b.animationComplete(k+1),p=!1})),b.pagination&&(a("."+b.paginationClass+" li."+b.currentClass,c).removeClass(b.currentClass),a("."+b.paginationClass+" li:eq("+k+")",c).addClass(b.currentClass))}}function x(){clearInterval(c.data("interval"))}function y(){b.pause?(clearTimeout(c.data("pause")),clearInterval(c.data("interval")),u=setTimeout(function(){clearTimeout(c.data("pause")),v=setInterval(function(){w("next",i)},b.play),c.data("interval",v)},b.pause),c.data("pause",u)):x()}a("."+b.container,a(this)).children().wrapAll('<div class="slides_control"/>');var c=a(this),d=a(".slides_control",c),e=d.children().size(),f=d.children().outerWidth(),g=d.children().outerHeight(),h=b.start-1,i=b.effect.indexOf(",")<0?b.effect:b.effect.replace(" ","").split(",")[0],j=b.effect.indexOf(",")<0?i:b.effect.replace(" ","").split(",")[1],k=0,l=0,m=0,n=0,o,p,q,r,s,t,u,v;if(e<2)return a("."+b.container,a(this)).fadeIn(b.fadeSpeed,b.fadeEasing,function(){o=!0,b.slidesLoaded()}),a("."+b.next+", ."+b.prev).fadeOut(0),!1;if(e<2)return;h<0&&(h=0),h>e&&(h=e-1),b.start&&(n=h),b.randomize&&d.randomize(),a("."+b.container,c).css({overflow:"hidden",position:"relative"}),d.children().css({position:"absolute",top:0,left:d.children().outerWidth(),zIndex:0,display:"none"}),d.css({position:"relative",width:f*3,height:g,left:-f}),a("."+b.container,c).css({display:"block"}),b.autoHeight&&(d.children().css({height:"auto"}),d.animate({height:d.children(":eq("+h+")").outerHeight()},b.autoHeightSpeed));if(b.preload&&d.find("img:eq("+h+")").length){a("."+b.container,c).css({background:"url("+b.preloadImage+") no-repeat 50% 50%"});var z=d.find("img:eq("+h+")").attr("src")+"?"+(new Date).getTime();a("img",c).parent().attr("class")!="slides_control"?t=d.children(":eq(0)")[0].tagName.toLowerCase():t=d.find("img:eq("+h+")"),d.find("img:eq("+h+")").attr("src",z).load(function(){d.find(t+":eq("+h+")").fadeIn(b.fadeSpeed,b.fadeEasing,function(){a(this).css({zIndex:5}),a("."+b.container,c).css({background:""}),o=!0,b.slidesLoaded()})})}else d.children(":eq("+h+")").fadeIn(b.fadeSpeed,b.fadeEasing,function(){o=!0,b.slidesLoaded()});b.bigTarget&&(d.children().css({cursor:"pointer"}),d.children().click(function(){return w("next",i),!1})),b.hoverPause&&b.play&&(d.bind("mouseover",function(){x()}),d.bind("mouseleave",function(){y()})),b.generateNextPrev&&(a("."+b.container,c).after('<a href="#" class="'+b.prev+'">Prev</a>'),a("."+b.prev,c).after('<a href="#" class="'+b.next+'">Next</a>')),a("."+b.next,c).click(function(a){a.preventDefault(),b.play&&y(),w("next",i)}),a("."+b.prev,c).click(function(a){a.preventDefault(),b.play&&y(),w("prev",i)}),b.generatePagination?(b.prependPagination?c.prepend("<ul class="+b.paginationClass+"></ul>"):c.append("<ul class="+b.paginationClass+"></ul>"),d.children().each(function(){a("."+b.paginationClass,c).append('<li><a href="#'+m+'">'+(m+1)+"</a></li>"),m++})):a("."+b.paginationClass+" li a",c).each(function(){a(this).attr("href","#"+m),m++}),a("."+b.paginationClass+" li:eq("+h+")",c).addClass(b.currentClass),a("."+b.paginationClass+" li a",c).click(function(){return b.play&&y(),q=a(this).attr("href").match("[^#/]+$"),n!=q&&w("pagination",j,q),!1}),a("a.link",c).click(function(){return b.play&&y(),q=a(this).attr("href").match("[^#/]+$")-1,n!=q&&w("pagination",j,q),!1}),b.play&&(v=setInterval(function(){w("next",i)},b.play),c.data("interval",v))})},a.fn.slides.option={preload:!1,preloadImage:"/img/loading.gif",container:"slides_container",generateNextPrev:!1,next:"next",prev:"prev",pagination:!0,generatePagination:!0,prependPagination:!1,paginationClass:"pagination",currentClass:"current",fadeSpeed:350,fadeEasing:"",slideSpeed:350,slideEasing:"",start:1,effect:"slide",crossfade:!1,randomize:!1,play:0,pause:0,hoverPause:!1,autoHeight:!1,autoHeightSpeed:350,bigTarget:!1,animationStart:function(){},animationComplete:function(){},slidesLoaded:function(){}},a.fn.randomize=function(b){function c(){return Math.round(Math.random())-.5}return a(this).each(function(){var d=a(this),e=d.children(),f=e.length;if(f>1){e.hide();var g=[];for(i=0;i<f;i++)g[g.length]=i;g=g.sort(c),a.each(g,function(a,c){var f=e.eq(c),g=f.clone(!0);g.show().appendTo(d),b!==undefined&&b(f,g),f.remove()})}})}})(jQuery)

Teraz przystępujemy do zrobienia contentu strony. Będą to 4 boxy w których będzie jakaś treść. Zaczynamy od stowrzenia divu o id content oraz naszego divu który wyśrodkowuje strone.

<div id="content">
<div class="center">

Teraz zrobimy box w którym jest
1) nagłówek
2) obrazek
3) opis

<div class="news">
<div class="head-news"> The New iPad - keynote</div>
<div class="img-news"><img src="img/ipad.jpg" alt /></div>
<div class="content-news"> Już jutro, 7 marca, odbędzie się długo wyczekiwana konferencja, podczas której przedstawiony zostanie kolejny model iPada. Relację na żywo z tego wydarzenia będziecie mogli śledzić na na... <a href="#">czytaj dalej.</a> </div>
</div>

Możemy skopiować to co napisaliśmy i zmienić nagłówek, obrazek i opis. Ja jednak tego nie będę robił

<div class="news">
<div class="head-news"> The New iPad - keynote</div>
<div class="img-news"><img src="img/ipad.jpg" alt /></div>
<div class="content-news"> Już jutro, 7 marca, odbędzie się długo wyczekiwana konferencja, podczas której przedstawiony zostanie kolejny model iPada. Relację na żywo z tego wydarzenia będziecie mogli śledzić na na... <a href="#">czytaj dalej.</a> </div>
</div>
<div class="news">
<div class="head-news"> The New iPad - keynote</div>
<div class="img-news"><img src="img/ipad.jpg" alt /></div>
<div class="content-news"> Już jutro, 7 marca, odbędzie się długo wyczekiwana konferencja, podczas której przedstawiony zostanie kolejny model iPada. Relację na żywo z tego wydarzenia będziecie mogli śledzić na na... <a href="#">czytaj dalej.</a> </div>
</div>
<div class="news">
<div class="head-news"> The New iPad - keynote</div>
<div class="img-news"><img src="img/ipad.jpg" alt /></div>
<div class="content-news"> Już jutro, 7 marca, odbędzie się długo wyczekiwana konferencja, podczas której przedstawiony zostanie kolejny model iPada. Relację na żywo z tego wydarzenia będziecie mogli śledzić na na... <a href="#">czytaj dalej.</a> </div>
</div>

wystarczy zamknąć div content oraz center

</div>
</div>

Została nam do zrobienia tylko stopka a więc tworzymy div o id footer oraz jak zwykle div wyśrodkowujący :)

<div id="footer">
<div class="center">

po lewej stronie stopki ma się znaleźć lista linków. Możemy zastosować <ul>

<div id="links">
<ul>
<li><a href="#">Lorem ipsum</a></li>
<li><a href="#">Dolor konta</a></li>
<li><a href="#">Nam non</a></li>
<li><a href="#">Ut a lorem ut </a></li>
<li><a href="#">Pellentesque dapibus </a></li>
<li><a href="#">Fringilla gravida</a></li>
</ul>
</div>

Następnie są partnerzy strony. Robimy div o id partnerzy, a w nim umieszczamy obrazek

<div id="partnerzy">
<img src="img/partnerzy.jpg" alt />
</div>

na samym końcu jest newsletter. Tworzymy div o id newsletter, w nim umieszczamy nagłówek w tagach h6

<div id="newsletter">
<h6>NEWSLETTER</h6>

teraz musimy zrobić pole do wpisywania tekstu. W tym przypadku będzie to adres email


<form method="post" action="#"> <input type="text" name="mejl" value="" placeholder="wpisz email i nacisnij ENTER" /> </form>

placeholder to tekst który widnieje w polu wpisywania

jeszcze dopisujemy małą informację


<p><span class="nl">Podaj nam swój email i bądź informowany o nowościach</span></p>

i możemy zamknąć div partnerzy

</div>

oraz div footer i center


</div> </div>

to już koniec naszego pliku index.html

możemy zamknąć sekcje body oraz html

</body>
</html>

Na początek powiem coś o CSS :D
jak zauważyłeś w HTML pisaliśmy divy np

<div id="footer"></div>

jest to div o id footer. Do id w CSS odnosimy się poprzez znak #

można też zapisać to tak:

<div class="footer"></div>

wtedy w CSS odnosimy się do classy poprzez . (kropkę)

Czym się to róźni?
Tym, że id o danej nazwie może być użyte na stronie TYLKO RAZ, a class możemy użyć ile razy chcemy.

Przykładowo:
Logo na stronie zazwyczaj mamy tylko jedno, więc używamy id
ale jeśli mamy na stronie element który się powtarza, np. jakiś box – wtedy używamy class
na przykład tak:

<div class="box">tresc pierwszego boxu</div>
<div class="box">tresc drugiego boxu</div>
<div class="box">tresc trzeciego boxu</div>
<div class="box">tresc czwartego boxu</div>

Myślę, że rozumiecie o co chodzi :)

Wrócimy do naszej stronki
Na początku należy do strony dodać tzw. reset
stosuje się go po to aby na każdej przeglądarce strona wyglądałą tak samo i po to aby nie dodawało nam jakichś niepotrzebnych marginesów czy paddingów

/* reset marginesów oraz dopełnień */
html, body, ul, li { margin: 0; padding: 0;}

/* reset wysokości linii i fontu */
h1, h2, ul, li, p { margin: 0; padding: 0; font-size: 15px; line-height: 1.5em;}

/* ustawienia globalne */
body { font: 12px arial, tahoma, verdana, sans-serif; background-color: #ececec;}

/* wyśrodkowanie i szerokość strony */
.center {width: 990px; margin: 0 auto;}

/* resetowanie ramek obrazków */
a img {border: none;}

/* resetowanie kółeczek w ul */
ul {list-style: none;}

w naszym projekcie wystarczy tylko tyle.
ustawiamy w nim wielkość i rodzaj czcionki, szerokość strony itp.

przejdźmy do ostylowania headeru – był to div o ID header
więc tworzymy go następująco

#header {}

w klamrach wpisujemy deklaracje do tego divu. Chcemy aby miał wysokość 240 pikseli więc wpisujemy:

#header {height:240px;}

następnie chcemy dodać nową deklarację do nagłówka h1 który znajduje się w środku divu header. Aby to zrobić wystarczy postawić spacje po #header

#header h1 {padding: 57px 64px;}

tak samo robimy z linkiem:

#header h1 a {background: url(../img/logo.jpg) top left no-repeat; display: block; height: 68px; text-indent: -99999px;}

teraz zrobimy menu

/* menu */
#menu {background: #252525; height: 43px; -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px;}
#menu ul {overflow: hidden; list-style: none;}
#menu ul li {float:left; margin-left: 35px;}

następnie ostylujemy slideshow:

/* showcase */
#showcase { margin: 0 auto; padding: 0; width: 990px; height: 150px; }
#showcase .pagination { margin: 0 auto; padding: 15px 0 0 0; width: 100px; text-indent: -99999px; }
#showcase .pagination li a { width: 14px; height: 13px; display: block; background: url(../img/koleczka.png) no-repeat; float: left; }
#showcase .pagination li.current a { background-position: 0 -12px; }
#showcase .slides_container {width: 990px; height: 110px; overflow:hidden; position:relative; }
#showcase .show1 {margin-left: 160px;}

content:

/* content */
#content {overflow: hidden;}
#content .news { float:left; margin: 0 12px; background: #fff; border-right: 1px solid #bebebe; border-bottom: 1px solid #bebebe; width:220px; height:270px; -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px;}
#content .news .head-news {font-family: tahoma, sans-serif; padding: 20px 35px 15px 35px; color: #565656; font-weight: 700;}
#content .news .content-news {font-size:11px; color: #565656; line-height:20px; padding: 8px 5px;}
#content .news .content-news a {color: #e06b6b; text-decoration: none;}

oraz footer

/* footer */
#footer {background: #1f1f1f; width: 100%; height:300px; margin-top:20px; overflow: hidden;}
#footer #links {padding-top:50px;float: left;}
#footer #links ul {text-align: right; width: 200px; border-right: 1px solid #fff; padding-right: 40px;}
#footer #links ul li {margin: 10px 0;}
#footer #links ul li a{color: #fff; text-decoration:none; font-size:11px; }
#footer #partnerzy {float: left; margin: 35px;}
#footer #newsletter {float:left; width:264px; height: 105px; background: #282828; margin-top: 60px; -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px;}
#footer #newsletter h6 {color:#fff; font-size:14px; font-family: arial, sans-serif; text-align:center; margin: 10px 0 0 0;}
#footer #newsletter input {width:232px; height:30px; border:0; margin: 8px 15px; -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px;}
#footer #newsletter span.nl {font-size:11px; color: #565656;}
#footer #newsletter p {text-align:center; line-height: 12px; margin-top: -4px;}

Nie będę tłumaczył każdej linijki, bo tutorial kierowany jest do osób które miały już z tym styczność

Tak wygląda nasz kod CSS

Tak oto stworzyliśmy stronę WWW liczącą 135 lini kodu HTML oraz 55 CSS

Całość przedstawia się następująco:
HTML

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pl" lang="pl">

<head>
<meta name="description" content="Przykładowy opis" />
<meta name="keywords" content="Słowa kluczowe" />
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<meta http-equiv="content-language" content="pl" />
<title>intblog</title>
<link rel="stylesheet" href="css/style.css" media="screen" type="text/css" />

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js"></script>
<script src="js/slides.min.jquery.js"></script>
<script>
$(function(){
// Set starting slide to 1
var startSlide = 1;
// Get slide number if it exists
if (window.location.hash) {
startSlide = window.location.hash.replace('#','');
}
// Initialize Slides
$('#slides').slides({
preload: true,
preloadImage: 'img/loading.gif',
generatePagination: true,
play: 5000,
pause: 2500,
hoverPause: true,
// Get the starting slide
start: startSlide,
animationComplete: function(current){
// Set the slide number as a hash
window.location.hash = '#' + current;
}
});
});
</script>

</head>
<body>

<div id="header">
<div class="center">
<h1><a href="#">intblog</a></h1>

<div id="menu">
<ul>
<li><a href="#"><img src="img/home.jpg" alt /></a></li>
<li><a href="#"><img src="img/forum.jpg" alt /></a></li>
<li><a href="#"><img src="img/nowe-posty.jpg" alt /></a></li>
<li><a href="#"><img src="img/nowosci.jpg" alt /></a></li>
<li><a href="#"><img src="img/recenzje.jpg" alt /></a></li>
<li><a href="#"><img src="img/kontakt.jpg" alt /></a></li>
</ul>
</div>

</div>
</div>

<div id="showcase">
<div id="slides">
<div class="slides_container">
<div class="slide">
<div class="show1">
Treść 13131131311
</div>
</div>
<div class="slide">
<div class="show1">
<img src="img/slideshow-obrazek1.jpg" alt />
</div>
</div>
<div class="slide">
<div class="show1">
Tekst numre 1400
</div>
</div>
</div>
</div>
</div>

<div id="content">
<div class="center">
<div class="news">
<div class="head-news"> The New iPad - keynote</div>
<div class="img-news"><img src="img/ipad.jpg" alt /></div>
<div class="content-news"> Już jutro, 7 marca, odbędzie się długo wyczekiwana konferencja, podczas której przedstawiony zostanie kolejny model iPada. Relację na żywo z tego wydarzenia będziecie mogli śledzić na na... <a href="#">czytaj dalej.</a> </div>
</div>
<div class="news">
<div class="head-news"> The New iPad - keynote</div>
<div class="img-news"><img src="img/ipad.jpg" alt /></div>
<div class="content-news"> Już jutro, 7 marca, odbędzie się długo wyczekiwana konferencja, podczas której przedstawiony zostanie kolejny model iPada. Relację na żywo z tego wydarzenia będziecie mogli śledzić na na... <a href="#">czytaj dalej.</a> </div>
</div>
<div class="news">
<div class="head-news"> The New iPad - keynote</div>
<div class="img-news"><img src="img/ipad.jpg" alt /></div>
<div class="content-news"> Już jutro, 7 marca, odbędzie się długo wyczekiwana konferencja, podczas której przedstawiony zostanie kolejny model iPada. Relację na żywo z tego wydarzenia będziecie mogli śledzić na na... <a href="#">czytaj dalej.</a> </div>
</div>
<div class="news">
<div class="head-news"> The New iPad - keynote</div>
<div class="img-news"><img src="img/ipad.jpg" alt /></div>
<div class="content-news"> Już jutro, 7 marca, odbędzie się długo wyczekiwana konferencja, podczas której przedstawiony zostanie kolejny model iPada. Relację na żywo z tego wydarzenia będziecie mogli śledzić na na... <a href="#">czytaj dalej.</a> </div>
</div>
</div>
</div>

<div id="footer">
<div class="center">
<div id="links">
<ul>
<li><a href="#">Lorem ipsum</a></li>
<li><a href="#">Dolor konta</a></li>
<li><a href="#">Nam non</a></li>
<li><a href="#">Ut a lorem ut </a></li>
<li><a href="#">Pellentesque dapibus </a></li>
<li><a href="#">Fringilla gravida</a></li>
</ul>
</div>

<div id="partnerzy">
<img src="img/partnerzy.jpg" alt />
</div>
<div id="newsletter">
<h6>NEWSLETTER</h6>
<form method="post" action="#">
<input type="text" name="mejl" value="" placeholder="wpisz email i nacisnij ENTER" />
</form>
<p><span class="nl">Podaj nam swój email i bądź informowany o nowościach</span></p>
</div>
</div>
</div>

</body>
</html>

CSS

/* reset marginesów oraz dopełnień */
html, body, ul, li { margin: 0; padding: 0;}

/* reset wysokości linii i fontu */
h1, h2, ul, li, p { margin: 0; padding: 0; font-size: 15px; line-height: 1.5em;}

/* ustawienia globalne */
body { font: 12px arial, tahoma, verdana, sans-serif; background-color: #ececec;}

/* wyśrodkowanie i szerokość strony */
.center {width: 990px; margin: 0 auto;}

/* resetowanie ramek obrazków */
a img {border: none;}

/* resetowanie kółeczek w ul */
ul {list-style: none;}

/* header */
#header {height:240px;}
#header h1 {padding: 57px 64px;}
#header h1 a {background: url(../img/logo.jpg) top left no-repeat; display: block; height: 68px; text-indent: -99999px;}

/* menu */
#menu {background: #252525; height: 43px; -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px;}
#menu ul {overflow: hidden; list-style: none;}
#menu ul li {float:left; margin-left: 35px;}

/* showcase */
#showcase { margin: 0 auto; padding: 0; width: 990px; height: 150px; }
#showcase .pagination { margin: 0 auto; padding: 15px 0 0 0; width: 100px; text-indent: -99999px; }
#showcase .pagination li a { width: 14px; height: 13px; display: block; background: url(../img/koleczka.png) no-repeat; float: left; }
#showcase .pagination li.current a { background-position: 0 -12px; }
#showcase .slides_container {width: 990px; height: 110px; overflow:hidden; position:relative; }
#showcase .show1 {margin-left: 160px;}

/* content */
#content {overflow: hidden;}
#content .news { float:left; margin: 0 12px; background: #fff; border-right: 1px solid #bebebe; border-bottom: 1px solid #bebebe; width:220px; height:270px; -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px;}
#content .news .head-news {font-family: tahoma, sans-serif; padding: 20px 35px 15px 35px; color: #565656; font-weight: 700;}
#content .news .content-news {font-size:11px; color: #565656; line-height:20px; padding: 8px 5px;}
#content .news .content-news a {color: #e06b6b; text-decoration: none;}

/* footer */
#footer {background: #1f1f1f; width: 100%; height:300px; margin-top:20px; overflow: hidden;}
#footer #links {padding-top:50px;float: left;}
#footer #links ul {text-align: right; width: 200px; border-right: 1px solid #fff; padding-right: 40px;}
#footer #links ul li {margin: 10px 0;}
#footer #links ul li a{color: #fff; text-decoration:none; font-size:11px; }
#footer #partnerzy {float: left; margin: 35px;}
#footer #newsletter {float:left; width:264px; height: 105px; background: #282828; margin-top: 60px; -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px;}
#footer #newsletter h6 {color:#fff; font-size:14px; font-family: arial, sans-serif; text-align:center; margin: 10px 0 0 0;}
#footer #newsletter input {width:232px; height:30px; border:0; margin: 8px 15px; -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px;}
#footer #newsletter span.nl {font-size:11px; color: #565656;}
#footer #newsletter p {text-align:center; line-height: 12px; margin-top: -4px;}

DEMO: http://imichal.ugu.pl/tutorial24/index.html

Wynagrodź moją ciężką pracę Okejką :)

Pokaż/Ukryj wszystko

Tutorial się podobał? Podziel się z innymi:

Dyskusja (6 wypowiedzi)

Dodaj odpowiedź

Dodaj komentarz