maszti88
15.01.2010, 12:52:49
Mam problem z ustaleniem dlaczego poszczególne elementy "li" przesunięte są od górnego obramowania i lewego obramowanua <div> o kilka pikseli, dołączam kod css i plik. Wydaje mi się to nielogiczne bo nie używam ani margin ani padding .
kod style.css :
body { overflow: hidden; }
div {
width: 700px;
height: 100px;
border: solid red 3px;
overflow: hidden;
padding: 0;
}
ul {
text-decoration: none;
list-style:none;
}
ul li {
float: left;
border: solid yellow 2px;
width:100px;
height: 80px;
text-align: center;
overflow:hidden;
}
ul li a {
text-decoration: none;
}
kod na stronie:
<body>
<div>
<ul>
<li><a href="http://onet.pl"><b>Wszystkie</b></a></li>
<li><a href="http://onet.pl"><b>Technologia</b></a></li>
<li><a href="http://onet.pl"><b>Kraj</b></a></li>
</ul>
</div>
</body>
wookieb
15.01.2010, 13:30:46
Ponieważ ul i li mają domyuślne wartosci margi i padding
maszti88
15.01.2010, 14:08:00
a czy mozna usunąć te standardowe margin i padding
lukaszgolder
15.01.2010, 14:10:01
margin: 0; i padding: 0; w stylach CSS
maszti88
15.01.2010, 14:29:10
a jak wystylizowac styl "ul li a", aby zajmował on cała powierzchnie "li" bo jak wstawiłem taki kod:
ul li a {
margin:0px;
padding:0px;
display: block;
width: 80px;
height: 30px;
background-color: transparent;
}
to blok ten jest przesunięty w dół i nie pokrywa całkowicie powierzchni "li". Dodam że width i height jest takie samo jak w "li".
lukaszgolder
15.01.2010, 14:34:24
Wyżej miałeś dla li ustawione wartości 100 i 80. Spróbuj może width: 100%; height: 100%; albo width: auto; jeśli chcesz dodać jakiś padding.
zordon
15.01.2010, 14:40:48
*{
margin: 0;
padding: 0;
}
ul li a {
margin:0px;
padding:0px;
display: block;
background-color: transparent;
width: 100%;
height: 100%;
}
maszti88
15.01.2010, 14:42:05
Nie działa niestety. Zakładamy że li ma width 100 px a height 50 px w "li" znaduje sie odnośnik "a". Chciałbym aby ten odnośnik był tak wystylizowany aby zajmował dokładnie powierzchnie li. Czy "a" również posiada jakieś domyślne wartości margin padding ?
zordon
15.01.2010, 14:45:00
u mnie działa.
może coś zmieniałeś od czasu pierwszego listingu i nie napisałeś co?
oto mój cały dokument html(style w tym samym pliku, ale poradzisz sobie

)
*{
margin: 0;
padding: 0;
}
div {
width: 700px;
height: 100px;
border: solid red 3px;
overflow: hidden;
padding: 0;
}
ul {
text-decoration: none;
list-style:none;
}
ul li {
float: left;
border: solid yellow 2px;
width:100px;
height: 80px;
text-align: center;
overflow:hidden;
}
ul li a {
margin:0px;
padding:0px;
display: block;
background-color: transparent;
width: 100%;
height: 100%;
}
<li><a href="http://onet.pl"><b>Wszystkie
</b></a></li> <li><a href="http://onet.pl"><b>Technologia
</b></a></li> <li><a href="http://onet.pl"><b>Kraj
</b></a></li>
maszti88
15.01.2010, 17:55:12
kolejny problem jaki się pojawił jest ustawienie elementów w komórce "td". Zakładamy że height jest równe 300px; a blok który ma się w tej komórce znajdować ma mieć 200px; zawartość tego bloku ustawia się na środku komórki "td" a ja chciałbym zrobić aby ustawiało się do góry (przy top). Dodam że nie używam żadnych margin i padding.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę
kliknij tutaj.