Hey Jeg har af en eller anden mærkværdig årsag bestemt mig til at jeg vil flytte min "søgeform" op i toprammen, hvor den i skabelonen jeg sidder med, ellers skal sidde i topmenuen.. Det kan man også godt, -og jeg har også gjort det, - men den sidder ikke "fast" - fordi jeg har givet den placeringen "absolute" - men den mangler noget "relative" at sidde "fast i".. Er der nogen der kan hjælpe med hvordan jeg kan få skidtet fast gjort? Og måske gør feltet mere aflangt? så snart jeg begynder at tilføje noget med "relative" hopper "den hjem" i topmenuen.. Ligesom jeg også gerne vil skrive noget "default" tekst i feltet, feks "Søg produkt" - nogen forslag til hvordan jeg gør det?? Se det her: herretøj på nettet Hjælp for hulan - eller jeg får et hysterisk anfald. - På forhånd tak mvh/ Ulrik |
Forklar lidt nærmere omkring hvad du mener med "sidder fast" ? :-)
Det er sådan at et absolut positioneret element altid positioneres ud fra det første parent (forældre)-element som enten har en absolut eller relativ positionering.
dvs hvis du har et element inde i et andet element så kan du positionere det inderste element ud fra det omkringliggende ved at give det inderste en absolut positionering og det yderste kan du bare sætte til position:relative hvis det ikke skal flytte sig nogen steder i forhold til det normlae dokumentflow.
Hvis et element (uanset hvor mange andre elementer det står inde i) ikke har et parent-element med en position:relative eller position:absolute værdi, så bliver det positioneret efter viewporten (dvs browserens synlige vindue). Bliver et element positioneret efter browserens viewport, så vil det blive stående det samme sted når du scroller eventuelt andre elementer på siden, fordi browserens viewport af naturlige årsager ikke scroller, men derimod dokumentet.
Du kan læse en ældre men stadigvæk helt glimrende tutorial om css positionering her:
http://www.brainjar.com/css/positioning/
Default tekst i søgefeltet, kan du i moderne browsere klare helt simpelt ved hjælp af placeholder attributten: feks. <input placeholder="min default tekst" value="">. Desværre virker den ikke som du nok har gættet i IE, så alternativet er at bruge javascript kode til at skifte værdien af inputfeltet afhængig af om brugeren har aktiveret (klikket, eller fokus sat med keybaord) feltet. Det findes der er en bunke scripts til og der er også en masse scripts der simulere placeholder attributten i ældre browsere, således at den bruger javascript der hvor den ikke er understøttet m.v.
En hurtig google på det gav mig følgende resultat:
http://www.google.dk/search?sourceid=chrome&ie=UTF-8&q=placeholder+attribute+script
Her er f.eks. et jQuery plugin:
http://web.enavu.com/design/advanced-jquery-placeholder-plugin-cross-browser-support/