ďťż
Podstrony
|
telcocafeWitam,mam taki kod: <td width="178" height="453" STYLE="background-image: url(images/lay_04.jpg); vertical-align: top" cellpadding="0" cellspacing="0"> <table cellpadding= "0" cellspacing="0" STYLE="background-color: red; position: relative; left:10px"> <tr> <td cellpadding= "0" cellspacing="0" STYLE="background-color: blue;"> <a onmouseover='przycisk1.src="przycisk1nad.jpg"' onmouseout='przycisk1.src="przycisk1.jpg"' href="__link__" border="0"> <img src="przycisk1.jpg" name="przycisk1" valign=center STYLE="border: 0px" /> </a> </td></tr> <tr> <td cellpadding= "0" cellspacing="0"> <a onmouseover='przycisk2.src="przycisk2nad.jpg"' onmouseout='przycisk2.src="przycisk2.jpg"' href="__link__"> <img src="przycisk2.jpg" name="przycisk2" valign=center STYLE="border: 0px"/> </a> </td></tr></table></td> jest to fragment. Menu jest w jednej komorce tabeli (lewej), a w prawej komorce jest reszta strony. To jest właśnie kod tej lewej komórki... no i problem jest taki, że przyciski, które są w menu powrzucałem do nowej tabeli i każdy przycisk jest w nowym wierszu (i naturalnie nowej tabeli). Jednak nie iwem czemu pomiędzy tymi przyciskami jest przerwa - kilka pixeli (4-5). Żeby dowiedzieć się co ją powoduje pobawiłem się z kolorem tła komórek i wyszło, że właśnie one są za wysokie w stosunku do obrazka. (z góry , lewej i prawej strony pasują idealnie, ale od dołu tek komórki wystają i przez to przyciski nie są idealnie jeden pod drugim.) W Operze wszystko działa idealnei (są pod sobą bez zadnej przerwy), jednak IE coś nie pasuje;/ podobnie jest jak powsadzałem te przyciski w divy (w operze jest dobrze, a w IE divy wystają ponad przycisk z dołu - i dodatkowo z prawej strony też, sięgają z prawej strony aż do końca tabeli!; spany tak samo wystają, ale z prawej strony nie aż tak mocno) Pozdrawiam i proszę o pomoc, bo już kompletnie nie mam pomysłu co może to powodować;/ Ka-lolek 1. nie używaj tabel tylko rób na samych div`ach 2. ale skoro już to skoro na operze chodzi dobrze to i na FF też bo używają podobnego (jak nie tego samego) silnika. IE z kolei korzysta z innego. Idąc tym tropem proponuje zrobić tak, że w głównym kodzie .css zmniejsz wysokość komórki tak żeby na IE wyświetlało się wszystko dobrze. Następnie dopisz html>body td { } ta klauzula jest nie czytana przez IE zaś przez FF i inne przeglądarki jest prawidłowo interpretowana. W tej części napisz tak jak było wcześniej przed poprawkami dla IE i wszystko powinno być ok http://www.mynthon.n...s/szybkie_hacki tam masz sporo hacków na IE. wykorzystaj. @Dawid_fix napisałem prezcież, że z divami jest to samo:/ czyli chcesz powiedzieć, że w IE zawsze jest tak, że div zostawia obramowanie dookoła obiektu, który w nim się znajduje? nie da się go usunąć? to przecież bez sensu:P musi być jakiś sposób... tak samo z tabelami. jeżeli ludzie mają przycisk jako link, to jak wsadzają je aby były obok siebie? pozdrawiam daj w body margin i padding na 0 to po pierwsze. A po drugie. W moim sposobie ustalisz ich wysokość tak żeby ci nic nigdzie nie wystawało. w html>body td{} wstawic caly kod (tabele) pomiedzy te znaczniki: { } ? i przeciez jezeli zmienie wysokosc komorki, to bedzie ona tez widziana przez interpretator zarowno FF i Opery jak i IE. Wiec w FF i Operze bedzie 2x ten sam fragment. Musialbym jakos wrzucic ten kod tak zeby byl widoczny tylko przez IE? ... pozdro słuchaj to działa na tej zasadzie, że: jeżeli napisz normalnie 1)td{ kod css } 2)html>body td{ kod css} to IE zinterpretuje tylko nr.1 ponieważ nie rozumie czegoś takiego jak html>body więc to omija zaś FF i Opera zinterpretują znacznik td wg instrukcji po html>body a nr.1 oleją hmmm ale czemu Opera oleje td{} jak do tej pory to czyta?:P skad bedzie wiedziala, ze ma akurat ten pierwszy sposob olac , skoro ona czyta obydwa (przynajmniej tak mi sie zawsze zdawalo xD) ponieważ Opera napotka na klauzule body>html. Jest to taki mały trik który pozwala na omienięcie różnic między IE i pozostałymi przeglądarkami :) IE nie rozumie html>body więc tego nie interpretuje a dla przeglądarek opartych na innym silniku jest to zrozumiałe, a więc interpretują td wg. styli po html>body nie wiem czy mnie dobrze zrozzumiales... czyli jak napisze w jednym dokumencie body<html td{ bleble: bleble1} i pod spodem td{blebleble: bleble2} to wszystko bedzie ok? tzn. Opera przeczyta TYLKO body<html a IE TYLKO td ? tak... tylko zacznijmy od teg, że nie body<html tylko body>html :P |
|||
Sitedesign by AltusUmbrae. |