Autor Zpráva
WMPopi
Profil
Ahoj,
mám menší problém, tento web se při rozlišení 1024 zobrazí v pořádku bez horizontální posuvníku. Přidali jsme tam ale proklik na facebook stránku formou ikonky přilepené na pravém okraji layoutu. Tím se ale zvýší šířka stránky a při 1024 rozlišení se zobrazuje horizontální posuvník. Nešlo by to pomocí stylu nějak ošetřit, aby se ikonka zobrazovala a při menším rozlišení aby zajela za okraj a posuvník se nezobrazil?

Mohl bych to řešit javascriptem - při nižším rozlišení bych ikonku schovával..
soucekgns
Profil
$(window).resize(function () {
  var winWidth = $(window).width();
  var x = $("#faceboook").width();
  if (winWidth<(1024+x)) {
    $("#faceboook").css({'display' : 'none'});
  }
  else {
    $("#faceboook").css({'display' : 'block'});
  }
});
+ jquery
Chamurappi
Profil
Reaguji na soucekgnse:
Proč si má kvůli takovéhle trivialitě cpát do stránky druhý framework? Vždyť na zjištění šířky stačí jeden řádek provozuschopný ve všech prohlížečích bez jakéhokoliv frameworku.


Reaguji na WMPopiho:
Zkus overflow-x: hidden.
WMPopi
Profil
Chamurappi:
Proč si má kvůli takovéhle trivialitě cpát do stránky druhý framework?
Přesně tak, kvůli tomuhle bych tam nechtěl cpát jquery.

Zkus overflow-x: hidden.
Perfektní, ale přemýšlím, jestli by nešlo při zmenšení toho hlavního wrapperu posuvník zachovat..
soucekgns
Profil
Chamurappi:
Nevěděl jsme, že tam má prototype
WMPopi:
Na internetu jsem našel toto, mělo bz to fungovat:
<script type="text/javascript">
function winWidth() {
  if(typeof(window.innerWidth) == 'number') {
    //Non-IE
    myWidth = window.innerWidth;
  } else if(document.documentElement && document.documentElement.clientWidth) {
    //IE 6+ in 'standards compliant mode'
    myWidth = document.documentElement.clientWidth;
  } else if(document.body && document.body.clientWidth) {
    //IE 4 compatible
    myWidth = document.body.clientWidth;
  }
  if (myWidth<(1024+50)){
    document.getElementById('facebook').style.display='none';
  }
  else {
    document.getElementById('facebook').style.display='block';
  }
}
</script>
<body onresize="winWidth()">
pcmanik
Profil
soucekgns:
Nevěděl jsme, že tam má prototype
jQuery je uz nejaky standart, alebo co?

Na internetu jsem našel toto, mělo by to fungovat:
Ak nevies, ci to funguje, naco to sem davas?
soucekgns
Profil
Na internetu jsem našel toto, mělo by to fungovat:
zkoušel jsem to na http://www.w3schools.com/

-> a záleží na tom? snažil jsem se pomoc a ne jen kritizovat!
WMPopi
Profil
soucekgns:
díky, něco takovýho jsem měl na mysli a tak bych to napsal; ale přiznám se, čekám, jestli mě nenakopne Chamurappi nějakým nápadem v css :-) Jinak tam klidně nechám horizontální posuvník, trochu se mi příčí použít javascript..
Chamurappi
Profil
Reaguji na WMPopiho:
Mělo by to jít i čistě v CSS pomocí dalšího obalu a max-width (a zmíněného overflow), ale rozložení tvé stránky mi připadá tak zamotané, že si netroufám doporučit nic konkrétního :-)

Také by šlo kombinací několika chytře nastylovaných elementů zajistit, že při určité šířce stránky to facebookové ucho celé odskočí někam, kde nebude kvůli oříznutí vidět, ale to už je složitější finta.


Reaguji na soucekgnse:
snažil jsem se pomoc a ne jen kritizovat!
Kritika je také druhem pomoci.
Ve tvém skriptu ti na řádku 9 vypadlo h v clientWidt.

Napsal bych to spíš takhle:
(window.onresize = function()
{
  document.documentElement.className = document.documentElement.clientWidth < 1000 ? "male-okno" : "";
})()
… ať si kodér v CSS rozhodne, co a jak zobrazit při html.male-okno.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0