Navigační MENU   otázka

ASP.NET WebForms

Dobrý den,

rád bych požádal o pomoc s problémem týkajícím se navigačního menu.

.. Na stránkách, mám vytvořenou stránku Master page a v ní umístěnou následující komponentu horizontálního navigačního menu:

      <div id="Layer_Menu">
        <asp:Menu ID="Menu" runat="server" Orientation="Horizontal">
        <Items>
          <asp:MenuItem Text="AQUAcoolers"  Value="">
            <asp:MenuItem Text=".. Home Page .." NavigateUrl="~/Default.aspx" Value=""></asp:MenuItem>
            <asp:MenuItem Text=".. Pár slov o nás .." NavigateUrl="~/Firma.aspx" Value=""></asp:MenuItem>
            <asp:MenuItem Text=".. Kontakty .." Value=""></asp:MenuItem>
          </asp:MenuItem>
          <asp:MenuItem Text="Co nabízíme" Value="">
            <asp:MenuItem Text=".. Voda BENETA .." Value=""></asp:MenuItem>
            <asp:MenuItem Text=".. Výdejníky .." Value=""></asp:MenuItem>
            <asp:MenuItem Text=".. Instantní nápoje .." Value=""></asp:MenuItem>
            <asp:MenuItem Text=".. Ostatní .." Value=""></asp:MenuItem>
          </asp:MenuItem>
          <asp:MenuItem Text="Co je nového" Value="">
            <asp:MenuItem Text=".. Akce pro Vás .." Value=""></asp:MenuItem>
            <asp:MenuItem Text=".. Poukaz .." Value=""></asp:MenuItem>
            <asp:MenuItem Text=".. Novinky .." Value=""></asp:MenuItem>
          </asp:MenuItem>
          <asp:MenuItem Text="Download" NavigateUrl="~/NewUser_F.aspx" Value="">
            <asp:MenuItem Text=".. Ceník.pdf .." Value=""></asp:MenuItem>
            <asp:MenuItem Text=".. Katalog.pdf .." Value=""></asp:MenuItem>
            <asp:MenuItem Text=".. ADOBE Reader .." Value=""></asp:MenuItem>
          </asp:MenuItem>
        </Items>
        </asp:Menu>
      </div>

... její styly mám naskynované následně:

- v souboru SkinFile.skin mám toto

<asp:Menu runat="server" 
    StaticMenuItemStyle-CssClass="menuItem"
    StaticHoverStyle-CssClass="menuItemSelected" 
    DynamicMenuItemStyle-CssClass="menuItemDynamic"
    DynamicHoverStyle-CssClass="menuItemSelected" />

- v souboru StyleSheet.css mám toto

.menuItem {
	width: 120px;
	padding: 2px 0px;
	text-align: center;
    font-family: Times New Roman CE;
    font-style: italic;
    font-size: 12px;
    color: #000000;
    background-color: Transparent;
}
.menuItemDynamic {
 	width: 116px;
 	padding: 2px 0px;
 	text-align: center;
 	font-family: Times New Roman CE;
    font-style: italic;
    font-size: 12px;
    color: #FFFFFF;
    background-color: #000099;
}
.menuItemSelected {
	width: 116px;
	padding: 2px 0px;
	text-align: center;
	color: #FFFFFF;
	background-color: #0000FF;
}

A nyní k samotnému problému:

- takto vytvořené menu mi bez problému fungovalo, tzn. po najetí myší se mi rozevřely vnořené položky submenu na modrém podkladě a zobrazily se. Nyní je však situace taková, že se mi na stránce korektně zobrazí navigační lišta s menu, ale při najetí myši na jednotlivé položky se sice rozevře dynamicky submenu jenže je bílé a neobsahuje vnořené položky submenu.

Nevím jak se to mohlo stát, protože jsem na této MasterPage nedělal již delší dobu žádné úpravy a tudíž také na komponentě menu. Nevím přesně kdy tato chyba nastala, já ji zaznamenal včera, ale asi před třemi dny jsem upgradoval IE na novou verzi.

Nevím zda to spolu nesouvisí.

Předem děkuji každému kdo může poradit !!!

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Zkoušel jste otevřít stránku v jiném prohlížeči(např.Mozilla,Chrome,...)??

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Vyzkoušel jsem to otevřít v Mozille a je to bez problémů.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Problém je tedy vyřešen :))

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Problém vyřešen není ...

Jelikož předpokládám, že většina uživatelů bude používat právě novou verzi IE, potřebuji nějak ošetřit, aby se menu korektně chovalo i zde.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Zkusil bych do sekce <head> přidat toto:

<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Tak jsem to vyzkoušel, ale nepomohlo to ...

Přesto děkuji

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Zkoušel jste vymazat <!DOCTYPE>?

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

Bude potřeba udělat nový CSS styl,tak aby fungoval i v IE8 a při loadování stránek checkovat jaká verze IE se používá a podle toho stylovat web

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Nejsem si jist, ale myslím, že problém není v CSS stylu, protože pokud v něm změním např. parametr width z původních 116px např. na 300px, tak se mi to ve stránce projeví.

Navíc jsem zkoušel nastylování úplně odstranit a výsledek byl stejný (menu fungovalo s defaultním nastylováním, ale položky submenu se stejně nezobrazily)...

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Tohle je vyloženě prasácké řešení. Vždycky se to dá udělat i bez takovýchto hacků a funguje to, IE8 standardy implementuje již velmi dobře. Pokud odděláte <!DOCTYPE, pak se prohlížeč přepne do Quirks módu a renderuje si to úplně jak chce, DOCTYPE ve stránce mít musíte, pokud chcete, aby to fungovalo.

Zkuste IE8 přepnout do režimu IE7, jestli je to tím (kliknutím na ikonku přestržené stránky v adresním řádku). V kterých prohlížečích to funguje a v kterých ne? Máte finální ostrou verzi IE8, nebo nějakou betu?

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

Máte pravdu, pokud prohlížeč přepnu do kompatibilního zobrazení jak popisujete je menu bez problémů.

Co se týče verze IE: - nejsem si jist, ale myslím, že se jedná o plnou verzi, která mi byla nabídnuta automaticky ke stažení.

Číslo verze je: 8.0.6001.18702

(z jiných prohlížečů jsem zkoušel Mozillu a tam nebyl problém)

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Pokud smažu následující,

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

tak menu funguje, ale rozhodí se mi nastavené umístění prvků v dokumentu (stránka je rozházená)...

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Doporučil bych nainstalovat některé opravné patche pro IE8...na stránkách Microsoftu je něco podobného rázu

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Dobrý den, mám podobný problém s navigačním menu jak uvádíte. Navíc jsem ještě zkoušel Google Chrome a tam se menu zobrazuje taky špatně. Nevítě někdo jak to vyřešit tak, aby se normálnímu uživateli zobrazilo menu jak ma? (u nových IE8 a Chrome)

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Musim se připojit ke kolegům,sice jsem nezkoušel IE8,ale v Chrome mi SiteMap funguje také špatně.Vůbec se mi nerozbalí,ale musim kliknout na root článek a pak se roleta rozbalí místo menu

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Bohužel mám stejnou zkušenost. Myslím že zakopaný pes by mohl být v odlišné interpretaci java scriptů ( ASP.NET tím řeší rozbalovací menu ) v IE8.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Spíš by to chtělo trochu upravit ty CSS styly, evidentně tam bude něco špatně. Zkusím se na to podívat a článek zrevidovat.

nahlásit spamnahlásit spam 0 odpovědětodpovědět
                       
Nadpis:
Antispam: Komu se občas házejí perly?
Příspěvek bude publikován pod identitou   anonym.
  • Administrátoři si vyhrazují právo komentáře upravovat či mazat bez udání důvodu.
    Mazány budou zejména komentáře obsahující vulgarity nebo porušující pravidla publikování.
  • Pokud nejste zaregistrováni, Vaše IP adresa bude zveřejněna. Pokud s tímto nesouhlasíte, příspěvek neodesílejte.

přihlásit pomocí externího účtu

přihlásit pomocí jména a hesla

Uživatel:
Heslo:

zapomenuté heslo

 

založit nový uživatelský účet

zaregistrujte se

 
zavřít

Nahlásit spam

Opravdu chcete tento příspěvek nahlásit pro porušování pravidel fóra?

Nahlásit Zrušit

Chyba

zavřít

feedback