CSS Menu gezocht

2 views
Skip to first unread message

Arjan

unread,
Aug 14, 2008, 10:05:54 AM8/14/08
to Smartsite5
Wie kan me helpen aan een goed CSS menu dat in Smartsite gebruikt kan
worden? Ik zoek een menu dat in combinatie van een sitemap-macro in
Smartsite een uitklap menu kan genereren. Het menu moet natuurlijk ook
in verschillende browsers goed werken.
Suckerfish menu is mogelijk bruikbaar, maar ik krijg het in Smartsite
niet goed aan de praat. Zie:
http://www.alistapart.com/articles/dropdowns

Groetjes,
Arjan Kessels

musicmaker111

unread,
Aug 14, 2008, 10:11:16 AM8/14/08
to Smartsite5
Ik heb ooit eens iets gemaakt met css/javascript en een sitemap macro.
Ik zal ff moeten zoeken of ik hiervan nog een voorbeeld kan vinden.

Johan Kanselaar

unread,
Aug 14, 2008, 10:35:52 AM8/14/08
to Smart...@googlegroups.com
Het is het waard denk ik om hier een keer een goede CSS guru voor in te huren. Want ik heb het iemand een keer zien doen, in een paar dagen uitzoeken..... Een puur CSS menu, dat in safari, firefox, opera en IE werkt zonder Javascript!. Niet dat het voor iedere browser hetzelfde werkt, maar wel werkt. Zelfs in IE7 en IE6 mbv IE6/IE7 specifieke CSS/HTML terwijl het toch gewoon compliant XHTML is. Terwijl gewoon met een SE sitemap de html te genereren is en ook nog gesorteerd in de volgorde die de redacteuren per folder in de manager hebben aangegeven.
Maar probleem is dat die uiteindelijk in de prullenbak is verdwenen met het cancellen van een project en het dus nooit in gebruik is genomen. De menu's waar ik de laatste tijd mee werk zijn niet echt handig op vrij veel punten en klappen niet eens meer uit dus daarmee wil ik je niet vermoeien. Maar ik wil je wel opbeuren: "het kan!" maar het is wat werk en je moet vrij geniaal met html en css zijn :)
 
Succes!
 
Johan

 
Op 14-08-08 heeft musicmaker111 <musicm...@gmail.com> het volgende geschreven:

Arjan

unread,
Aug 26, 2008, 3:43:56 AM8/26/08
to Smartsite5
Ik heb zelf nog eens zitten stoeien ermee, maar kom er niet uit.
Op deze URL vond ik een mooi werkend menu:
http://qrayg.com/experiment/cssmenus/

Vervolgens heb ik de htmnl-code van die pagina gebruikt in combinatie
met een sitemap in Smartsite. Dit is de sitemap:

<se error="{error}"
type="sitemap"
sql="select nr, title, parent, folder from [channelview] where
nr=50002 or
isChildOf(50002) AND hiddenchild=0 order by parent, title"
start="50002"
maxlevels="9"
noroot="true"
format="<li><a href='[item]=%Nr%' title='Link naar de pagina: %Title
%'>%Title%</a></li>"
blockheader="<ul id='navmenu-v'>"
blockfooter="</ul>"
/>

Het resultaat is hier te zien:
http://www.weert.nl/Smartsite.shtml?id=54923&ch=TER

Het menu werkt alleen in IE goed. (Ik heb getest met IE 7). In Firefox
en Opera krijg ik alleen de hoofditems te zien (niveau 1), de
uitklapmenu's zie ik niet in deze browsers.
Het vreemde is echter dat het originele menu op de pagina
http://qrayg.com/experiment/cssmenus/ wél goed werkt in Firefox en
Opera. Met andere woorden: er gaat iets mis in mijn versie, of de
sitemap van smartsite wordt zo opgebouwd dat Firefox en Opera er niets
mee kunnen.

Ik hoop dat iemand hier iets mee kan, want als we dit zouden kunnen
fixen hebben we een mooi CSS menu voor Smartsite, dat makkelijk te
configureren is en in vrijwel alle browsers werkt zonder scripts e.d.

Tips zijn dus welkom!

Groetjes,

Arjan

Johan Kanselaar

unread,
Aug 26, 2008, 4:43:04 AM8/26/08
to Smart...@googlegroups.com
Arjan,
 
Het is waarschijnlijk heel simpel. Je ID navmenu komt meerdere keren voor. Dat kan niet, een ID is een unique identifier van 1 en maximaal 1 tag.
Onderstaande zal beter gaan denk ik (ik heb wat lege regels toegevoegd zodat je output-html leesbaarder wordt):
 
<se error="{error}"
 type="sitemap"
 sql="select nr, title, parent, folder from [channelview] where
nr=50002 or
isChildOf(50002) AND hiddenchild=0 order by parent, title"
 start="50002"
 maxlevels="5"
 noroot="true"
 header="<ul id='navmenu-v'>
"
 blockheader="<ul>
"
 format="<li><a href='[item]=%Nr%' title='Link naar de pagina: %Title%'>%Title%</a></li>
"
 blockfooter="</ul>
"
/>
 


 
2008/8/26 Arjan <arjan....@gmail.com>

Arjan

unread,
Aug 26, 2008, 9:02:21 AM8/26/08
to Smartsite5
Hoi Johan,

Bedankt voor de tip, maar helaas heeft het me niet verder gebracht.
Volgens mij kun je in een sitemap macro namelijk geen header en footer
gebruiken. Het ID in een header zetten gaat dus niet. Ik heb ook
geprobeerd dan maar buiten de macro om de UL te starten en te sluiten,
maar ook dat werkt helaas niet. Bijv:

<ul id='navmenu-v'>
<se error="{error}"
type="sitemap"
...
..."
/>
</ul>


Tot slot heb ik de stylesheet nog aangepast en alles waar stond
#navmenu-v vervangen in .navmenu-v (class ipv id dus). Ook dat lukt
niet. Ik krijg het dus niet voor elkaar dit in Firefox en Opera aan de
praat te krijgen.

Hoop dat iemand anders nog tips heeft, als het werkt kun je hiermee
een mooi css menu bouwen!

groetjes,

Arjan


On 26 aug, 10:43, "Johan Kanselaar" <johankansel...@gmail.com> wrote:
> Arjan,
>
> Het is waarschijnlijk heel simpel. Je ID navmenu komt meerdere keren voor.
> Dat kan niet, een ID is een unique identifier van 1 en maximaal 1 tag.
> Onderstaande zal beter gaan denk ik (ik heb wat lege regels toegevoegd zodat
> je output-html leesbaarder wordt):
>
> <se error="{error}"
>  type="sitemap"
>  sql="select nr, title, parent, folder from [channelview] where
> nr=50002 or
> isChildOf(50002) AND hiddenchild=0 order by parent, title"
>  start="50002"
>  maxlevels="5"
>  noroot="true"
>  header="<ul id='navmenu-v'>
> "
>  blockheader="<ul>
> "
>  format="<li><a href='[item]=%Nr%' title='Link naar de pagina:
> %Title%'>%Title%</a></li>
> "
>  blockfooter="</ul>
> "
> />
>
> 2008/8/26 Arjan <arjan.kess...@gmail.com>
>
>
>
>
>
> > Ik heb zelf nog eens zitten stoeien ermee, maar kom er niet uit.
> > Op deze URL vond ik een mooi werkend menu:
> >http://qrayg.com/experiment/cssmenus/
>
> > Vervolgens heb ik de htmnl-code van die pagina gebruikt in combinatie
> > met een sitemap in Smartsite. Dit is de sitemap:
>
> > <se error="{error}"
> >  type="sitemap"
> >  sql="select nr, title, parent, folder from [channelview] where
> > nr=50002 or
> > isChildOf(50002) AND hiddenchild=0 order by parent, title"
> >  start="50002"
> >  maxlevels="9"
> >  noroot="true"
> >  format="<li><a href='[item]=%Nr%' title='Link naar de pagina: %Title
> > %'>%Title%</a></li>"
> >  blockheader="<ul id='navmenu-v'>"
> >  blockfooter="</ul>"
> > />
>
> > Het resultaat is hier te zien:
> >http://www.weert.nl/Smartsite.shtml?id=54923&ch=TER
>
> > Het menu werkt alleen in IE goed. (Ik heb getest met IE 7). In Firefox
> > en Opera krijg ik alleen de hoofditems te zien (niveau 1), de
> > uitklapmenu's zie ik niet in deze browsers.
> > Het vreemde is echter dat het originele menu op de pagina
> >http://qrayg.com/experiment/cssmenus/wél goed werkt in Firefox en
> > Opera. Met andere woorden: er gaat iets mis in mijn versie, of de
> > sitemap van smartsite wordt zo opgebouwd dat Firefox en Opera er niets
> > mee kunnen.
>
> > Ik hoop dat iemand hier iets mee kan, want als we dit zouden kunnen
> > fixen hebben we een mooi CSS menu voor Smartsite, dat makkelijk te
> > configureren is en in vrijwel alle browsers werkt zonder scripts e.d.
>
> > Tips zijn dus welkom!
>
> > Groetjes,
>
> > Arjan- Tekst uit oorspronkelijk bericht niet weergeven -
>
> - Tekst uit oorspronkelijk bericht weergeven -

Johan Kanselaar

unread,
Aug 26, 2008, 9:20:59 AM8/26/08
to Smart...@googlegroups.com
Dat vervangen naar class gaat ook niet want het is de bedoeling van het cssmenu dat alleen de starting ul die ID krijgt.
Maar sitemap kan wel header en footer, want alle macro's kunnen dat. Daarom hebben ze juist blockheader en blockfooter bedacht voor de tussenliggende niveaus met UL's.

Wat je ook kan doen is doen is er een div met het id omheen zetten. dus <div  id="navmenu"> <ul>.... </ul> </div>

In je CSS moet je dan even alles aanpassen naar  div.navmenu ul .......... { ... }

Hierdoor maak je de door de sitemap gegenereerde html compleet onafhankelijk van de vormgeving. Die genereert namelijk gewoon de kale ul li lijst, en de vormgeving is afhankelijk van het id van de div tag die je eromheen plaatst. Op die manier kan je ook de sitemap html cachen en op meerder plekken gebruiken met ander vormgeving (bijv als menu en als sitemap pagina).

succes!

Johan

Arjan

unread,
Sep 3, 2008, 6:03:17 AM9/3/08
to Smartsite5
Ik ben er uit. Het bleek een probleem te zijn van Smartsite zelf. Wat
blijkt? Het sitemap script van Smartsite (wij gebruiken versie 5.1d)
bouwt de html voor een UL-list niet goed op. Als je een opsomming
hebt, binnen een andere opsomming (heb je altijd in een
navigatiemenu!) dan komen sommige LI-tags buiten UL-tags te staan,
terwijl dat juist andersom zou moeten.
Als je in de macro de LI-tag niet sluit, dan werkt het wel. Ik heb het
getest in IE, Firefox, Opera én Safari en overal werkt het met deze
aanpassing. Goed, het is geen goede html en validatie zal een melding
opleveren, maar het werkt ten minste. Gegeven het feit dat de
sitemapmacro niet aangepast kan worden, doe ik het er maar mee. Dit is
de sitemapmacro nu:

<se type="sitemap">
<parameters>
<start>50002</start>
<maxlevels>5</maxlevels>
<sql><![CDATA[select nr, title, parent, folder,
case when ( select count(b.nr) from [channelview] b where
b.parent=a.nr and b.hiddenchild=0 and b.status=0 ) > 0 then '
class=plus' else '' end as plus
from [channelview] a where nr=50002 or isChildOf(50002) and
contenttype <>21 and hiddenchild=0 order by parent, sortindex,
title]]></sql>
<noroot>yes</noroot>
<format><![CDATA[<li><a href="[item]=%nr%"%plus%>%title%</a>]]></
format>
<showhiddenitems>yes</showhiddenitems>
<header><![CDATA[<div id="menu">]]></header>
<footer><![CDATA[</div>]]></footer>
</parameters>
</se>

Zoals je ziet staat in het format geen </li>, wat eigenlijk wel zou
moeten.

In combinatie met het stylesheet van dit voorbeeld: http://qrayg.com/learn/code/cssmenus/
kun je een mooi menu bouwen!

Het eindresultaat is inmiddels te zien op www.weert.nl

groetjes,

Arjan

Johan Kanselaar

unread,
Sep 3, 2008, 6:09:47 AM9/3/08
to Smart...@googlegroups.com
O, ja klopt dat was een probleem in eerder versie van smartsite. Het is ondertussen wel opgelost, weet niet precies in welke versie, maar ik weet wel dat het al een tijdje geleden opgelost is in de sitemap. Misschien verstandig om te upgraden naar 5.3? Ik heb hier al een testserver mee draaien en niet echt grote problemen tegengekomen. Eentje was dat het menu dat hier ooit gebouwd was in 5.1c (productie is nu 5.1d) met een sitemap macro niet meer compatible was met de sitemap macro van 5.3. Maar dat was een kwestie van even de syntax van de sitemap macro aanpassen en toen deed alles het weer. Verder geen problemen gehad.

Johan

2008/9/3 Arjan <arjan....@gmail.com>

Arjan

unread,
Sep 3, 2008, 7:29:18 AM9/3/08
to Smartsite5
Ik zou graag updaten, maar we draaien pas een goed jaar op deze versie
en het gaat een beetje boven het budget van onze organisatie om nu al
weer zoveel geld voor de update uit te trekken. We hebben een offerte
liggen, maar die viel fors tegen.


On 3 sep, 12:09, "Johan Kanselaar" <johankansel...@gmail.com> wrote:
> O, ja klopt dat was een probleem in eerder versie van smartsite. Het is
> ondertussen wel opgelost, weet niet precies in welke versie, maar ik weet
> wel dat het al een tijdje geleden opgelost is in de sitemap. Misschien
> verstandig om te upgraden naar 5.3? Ik heb hier al een testserver mee
> draaien en niet echt grote problemen tegengekomen. Eentje was dat het menu
> dat hier ooit gebouwd was in 5.1c (productie is nu 5.1d) met een sitemap
> macro niet meer compatible was met de sitemap macro van 5.3. Maar dat was
> een kwestie van even de syntax van de sitemap macro aanpassen en toen deed
> alles het weer. Verder geen problemen gehad.
>
> Johan
>
> 2008/9/3 Arjan <arjan.kess...@gmail.com>

Johan Kanselaar

unread,
Sep 3, 2008, 7:40:08 AM9/3/08
to Smart...@googlegroups.com
"de organisatie" is een gemeente? Meestal gebruiken die veel componenten (Digid, BIS, etc...) en dat levert altijd veel testwerk op....
Maar een site zonder componenten kan soms in 4 dagen, maar dat kan ook nog 4k zijn....

2008/9/3 Arjan <arjan....@gmail.com>

Arjan

unread,
Sep 3, 2008, 10:30:42 AM9/3/08
to Smartsite5
Ja klopt. Gemeente Weert dus.
We draaien heel wat componenten inderdaad. Maar nu in elk geval eentje
minder omdat ik van een javascript-menu ben overgestapt op dit nieuwe
menu.

Johan Kanselaar

unread,
Sep 3, 2008, 11:05:51 AM9/3/08
to Smart...@googlegroups.com
Ja! dat is al een hele verbetering. Echt een irritant component is dat :)
Tja in dat geval is een upgrade wel kostbaar. Dat is wel een groot nadeel van al die modules. Maar het rare is dat de core van de componenten (de dlls) backwards compatible zijn en dus na een upgrade prima moeten draaien. Dus de kosten zitten niet in die kant maar in de kwaliteit van de implementatie van de modules. Als die uit 5.0 of 5.1a stamt dan moet er ondertussen aardig wat aangepast worden.


2008/9/3 Arjan <arjan....@gmail.com>
Reply all
Reply to author
Forward
0 new messages