PDA

Zobacz pełną wersję : problem z rozjeżdżaniem się szablonu



baniaque
29-07-2010, 22:02
Jestem tu nowy więc witam uprzejmie wszystkich użytkowników :)

Mam problem, z którym nie mogę sobie poradzić. Kiedy w szablonie w kolumnie right jest tylko jeden moduł - wszystko jest OK. Wystarczy jednak, iż znajdzie się tam o jeden więcej i cała kolumna przesuwa się na lewą stronę na sam dół.

strona: http://mr12.info - zabezpieczona na razie na czas prac, więc gdy pojawi się okno logowania proszę wpisać login: joomla pass: joomlatest

Efekt można zaobserwować będąc na stronie startowej po prawej stronie jest moduł karma w prawidłowym miejscu. Gdy klikniemy PROFIL to trzy moduły do obsługi facebooka trafiają na lewą stronę. To samo dzieje się na stronie STARTOWA gdy użytkownik się zaloguje i pod modułem KARMA wyświetlany jest moduł menu użytkownika.

Fragment CSS:


#container {
width: 1000px;
margin: 0 auto;
}
#lang {
width: 990px;
height: 20px;
padding-right: 10px;
text-align: right;

}
#header {
background-image: url(../images/index_01.png);
width: 1000px;
height: 35px;
padding-top: 5px;
}


#zawartosc {
background-image: url(../images/background.png);
width: 980px;
padding: 10px;
overflow: hidden;
}

#mainContent800 {
width: 800px;
min-height: 600px;
float: left;

}

#mainContent980 {
width: 980px;
min-height: 600px;
float: left;

}

#right {
width:180px;
float: left;

}

#footer {
background-image: url(../images/index_05.png);
width: 1000px;
height: 30px;
clear: both;
}

Fragment kodu strony:


<body bgcolor="#FFFFFF">
<div id="container">
<div id="lang">
<jdoc:include type="modules" name="user2" style="xhtml" />
</div>

<div id="header">
<jdoc:include type="modules" name="top" style="xhtml" />
</div>
<div id="zawartosc">

<div id="dodatkowymodul"><jdoc:include type="modules" name="user1" style="xhtml" /></div>
<div id=<?php echo $mainContentselect ;?> >
<jdoc:include type="component" />
</div>
<?php if($this->countModules('right')) : ?>
<div id="right">
<jdoc:include type="modules" name="right" style="xhtml" />
</div>
<?php endif; ?>
</div>

<div id="footer">
<jdoc:include type="modules" name="footer" style="xhtml" />
</div>

<!-- end #container -->
</div>

</body>

Gdzie tkwi błąd??

a_m
29-07-2010, 22:18
również Cię witamy;

podaj poprawny link.



--------------------------------

o.k. przepraszam przeczytałem za szybko

Bazyl
29-07-2010, 22:19
Witaj,
Po kliknięciu div MainContent się rozszerza.
Coś pokręciłeś z ukrywaniem kolumn

baniaque
29-07-2010, 22:25
a_m: link jest prawidłowy

bazyl: po kliknięciu na czym rozszerza się MainContent?

a_m
29-07-2010, 22:33
tak dokładnie nie wiem o co chodzi, ale kliknąłem w "profil" - "Please ..." jest na górze a cała reszta o 600px niżej, gdyż #mainContent980 ma zadaną wysość min-height:600px.

Bazyl
29-07-2010, 22:34
Tak, jak napisałeś: profil

//
MainContent z 800 robi się 960px

a_m
29-07-2010, 22:41
960? #mainContent980 ma width:980px;


--------------------------


980 u mnie :)

Bazyl
29-07-2010, 22:43
Się czepiasz cyferki... ;)

MainContent ma 800px, a po kliknieciu w profil już 980px.

a_m
29-07-2010, 22:52
drogi bazylu, ile by nie miał szerokości, rozchodzi się o wysokość #mainContent - ów, kolega @baniaque powinien wszystko ładnie przeanalizować, nieprawdaż?

Bazyl
29-07-2010, 22:58
Oczywiście mogę sie mylić: ja zrozumiałem, że obok MainContent ma zawsze być div id=right.
MainContent się rozszerza i spycha Right na dół.

a_m
29-07-2010, 23:08
pewnie masz rację; zobaczyłem min-height:600px i pomyślałem, to co napisałem; jedno jest pewne - @baniaque nie zapoznał nas ze swoim projektem - może się pozbyć szerokości/wysokości/floatu itd ....

baniaque
29-07-2010, 23:55
ok, a wiec jak widać po załączonym kodzie jeżeli na danej stronie występuje moduł po prawej stronie to content ma mieć 800px, natomiast jeżeli nic nie ma to content ma mieć 980px.
jak ktoś kliknie PROFIL to wszystkie trzy moduły facebooka są przypisane do prawej kolumny, jednak nie wiem czemu jest ona spychana na dół.
teraz jak będziecie na stronie PROFIL zjedźcie na dół i zalogujcie się jako login: test, hasło: testtest i kliknijcie na stronę startową. W prawej kolumnie do modułu KARMA zostanie dodany moduł TWOJE MENU i tutaj już zaczynają się schody - prawa kolumna jest zepchnięta na dół. Próbowałem usuwać różne rzeczy ale cały czas mam to samo.
Wystarczy się wylogować i na stronie startowej znowu prawa strona jest wyświetlana poprawnie.

Bazyl
30-07-2010, 00:02
Zapewne masz w szablonie instrukcje warunkowe, które np. dla CB ustawiają 100% szerokości strony.

//
A może RIGHT sam dodałeś i to rozwala stronę?

baniaque
30-07-2010, 00:22
szablon robiłem sam i jest prościutki. pliki template.css i index.php, do tego 5 obrazów i templateDetails.xml
jeżeli z pliku css wytne absolutnie wszystko i oprocz tego co podalem w pierwszym poscie sytuacja jest nadal taka sama.

oto caly plik index.php


<?php defined( '_JEXEC' ) or die( 'Restricted access' );?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xml:lang="<?php echo $this->language; ?>" lang="<?php echo $this->language; ?>" >
<head>
<jdoc:include type="head" />
<link rel="stylesheet" href="<?php echo $this->baseurl ?>/templates/system/css/system.css" type="text/css" />
<link rel="stylesheet" href="<?php echo $this->baseurl ?>/templates/system/css/general.css" type="text/css" />
<link rel="stylesheet" href="<?php echo $this->baseurl ?>/templates/gaming/css/template.css" type="text/css" />
<?php
$mainContentselect = "mainContent980";
if($this->countModules('right') == 1) $mainContentselect = "mainContent800";
?>

<body bgcolor="#FFFFFF">
<div id="container">
<div id="lang">
<jdoc:include type="modules" name="user2" style="xhtml" />
</div>

<div id="header">
<jdoc:include type="modules" name="top" style="xhtml" />
</div>
<div id="zawartosc">

<div id="dodatkowymodul"><jdoc:include type="modules" name="user1" style="xhtml" /></div>
<div id=<?php echo $mainContentselect ;?> >
<jdoc:include type="component" />
</div>
<?php if($this->countModules('right')) : ?>
<div id="right">
<jdoc:include type="modules" name="right" style="xhtml" />
</div>
<?php endif; ?>
</div>

<div id="footer">
<jdoc:include type="modules" name="footer" style="xhtml" />
</div>

<!-- end #container -->
</div>

</body>
</html>



---------- Post dodany o 00:22 ---------- Poprzedni post był o 00:18 ----------

ok, znalazłem :D dopiero jak tutaj wkleiłem kod to zobaczyłem błąd w warunku if($this->countModules('right') == 1)

sorry za kłopot :D