Avatar billede xbobby Nybegynder
26. august 2003 - 14:28 Der er 58 kommentarer og
1 løsning

background-attachment: fixed; med to billeder

Jeg har to baggrundsbilleder i den samme html fil, hvor jeg ønsker ”background-attachment: fixed;”

Med andre ord to forskellige baggrunds billeder, som skal stå fast i baggrunden, når der kommer scrollbar på.

På grund af den måde siden er bygget op er det ikke muligt at lave de to billeder til et enkelt billede og derved løse problemet, så hvordan gør jeg det?

Hvad siger eksperterne?

Jeg har følgende stylesheets

<style type="text/css" media="screen">
<!--
body {
background-attachment: fixed;
background-color: #1C0C00;
background-image:
url(zenimage/bueMellem.gif);
background-repeat:
no-repeat;
background-position:
right top;
height : 418px;
width : 430px;
}
-->
</style>
Avatar billede roenving Novice
26. august 2003 - 14:30 #1
Du kan kun have eet billede som baggrund på et element !-)
Avatar billede Tony Juniormester
26. august 2003 - 14:38 #2
xbobby >> måske et floating div + background img. kan bruges ...
Avatar billede lklingenberg Nybegynder
26. august 2003 - 16:31 #3
body { background: transparent url(image1.gif) no-repeat fixed top right; }
html { background: transparent url(image2.gif) no-repeat fixed top left; }
Avatar billede lklingenberg Nybegynder
26. august 2003 - 16:32 #4
Avatar billede lklingenberg Nybegynder
26. august 2003 - 16:37 #5
Endnu et par bemærkninger:
Du skal nok sætte farven på html {...} til white (eller hvad du nu vil have). Farven på body {...} skal være transparent.
Jeg har testet positivt i Mozilla Firebird, Opera 7, K-Meleon 0.7. atributten fixed virker dog ikke i IE6 :-(
Avatar billede lklingenberg Nybegynder
26. august 2003 - 16:46 #6
hm, fixed virker ikke i IE6 når der er flere fixed baggrunde - så vil den ene blive scroll automatisk... Hvis der bare er en fixed baggrund er der ingen problemer. Mærkeligt!
Avatar billede Tony Juniormester
26. august 2003 - 16:53 #7
http://lknet.dk/test/4/

</hrml> - sjov afslutning ... 'åd' strict den under valideringen :o) ... ;-)
Avatar billede lklingenberg Nybegynder
26. august 2003 - 17:19 #8
ja, ja - kender du ikke tag'et <hrml>  ;-)
Avatar billede Tony Juniormester
26. august 2003 - 17:23 #9
jow da - det går fint sammen med <tafel> og <imk> :)
Avatar billede xbobby Nybegynder
27. august 2003 - 10:26 #10
Til Iklingenberg: Desværre er det IE6 jeg arbejder med, så derfor kan jeg ikke bruge den løsning du giver mig. Jeg har selv noget frem til en tilsvarende hvor jeg udover boddy stylen lavede en der hedder .baggrund og som så bliver kaldt fra et td tag med class="baggrund", men den giver samme resultat som du når frem til en baggrund der står stille og en der bevæger sig.
Spørgsmålet er når det kan lade sig gøre i de andre browser typer, om man så bare ikke skal gøre noget specielt, for at IE6 forstår det?
Avatar billede xbobby Nybegynder
27. august 2003 - 10:28 #11
Til tony breindal: Kan du vise mig en stump kode på hvad det er du mener, for hvem ved måske ligger du inde med løsningen? :-)
Avatar billede xbobby Nybegynder
27. august 2003 - 10:32 #12
Til roenvig. Jeg forstår ikke helt det med en baggrund på et element. Når du f.eks henviser til to forskellige baggrunde fra to forskellige style, som Iklingenberg gør med body og html er der så tale om et eller to elementer ?
Avatar billede lklingenberg Nybegynder
27. august 2003 - 11:15 #13
Du kan sikker også få hjælp af et par javascript-hajer til noget. Jeg tror jeg ligger inde med et "flydende" script (brugt til en menu). Der kunne man måske bruge til IE-brugere. Men hvis jeg skal kigge på det vil jeg gerne vide hvor store dine baggrunde er (evt. linke til dem så jeg kan bruge de originale).
Ang. tonys løsning, så tror jeg godt jev ved hvad han mener - jeg prøver det lige...
Avatar billede Tony Juniormester
27. august 2003 - 12:22 #14
Her er et eksempel. Indsættes nederst i koderne på din (test)side.

<DIV id="waterMark" style="position:absolute">
<a href="http://www.ud-i-verden.com"
onMouseOver="window.status='Kom med ud i verden!';return true" target="_blank"><IMG src="dit-watermark.gif" width=300 height=50 border=0></A></DIV>

<script language="JavaScript1.2">
<!--

markW = 300;      // size: pixels wide
markH = 50;      // size: pixels high
markX = 100;      // placering: percent right
markY = 100;      // placering: percent down
markRefresh = 20; // milliseconds

if (!document.all) document.all = document;
if (!document.all.waterMark.style) document.all.waterMark.style = document.all.waterMark;

wMark = document.all.waterMark.style;
wMark.width = markW;
wMark.height = markH;
navDOM = window.innerHeight; // Nav DOM flag

function setVals() {
barW = 0; // scrollbar compensation for PC Nav
barH = 0;
if (navDOM) {
  if (document.height > innerHeight) barW = 20;
  if (document.width > innerWidth) barH = 20;
  } else {
  innerWidth = document.body.clientWidth;
  innerHeight = document.body.clientHeight;
  }
posX = ((innerWidth - markW)-barW) * (markX/100);
posY = ((innerHeight - markH)-barH) * (markY/100);
}

function wRefresh() {
wMark.left = posX + (navDOM?pageXOffset:document.body.scrollLeft);
wMark.top = posY + (navDOM?pageYOffset:document.body.scrollTop);
}

function markMe() {
setVals();
window.onresize=setVals;
markID = setInterval ("wRefresh()",markRefresh);
}

window.onload=markMe; // safety for Mac IE4.5 //-->
</script>
</body>
</html>
Avatar billede lklingenberg Nybegynder
27. august 2003 - 12:43 #15
Det var noget i den stil jeg tænkte. Jeg har proppet tonys eksempel ind her: http://lknet.dk/test/4/index2.htm.

Der er bare et par problemer med den løsning:
1) Billedet ligger sig foran teksten - men det kan man sikkert kode sig ud af.
2) Billedet hakker en smule når man scroller.
3) Og den er skør... Man kan ikke angive en komplet DOCTYPE. Hvis man angiver mere end <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> ( fx. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">) virker scriptet ikke. Jeg aner ikke hvorfor, men sådan er det bare!
Avatar billede Tony Juniormester
27. august 2003 - 12:47 #16
Ja, det er crappy, men jeg kan ikke komme på andre løsninger end alm. CSS-watermark og så floating layer, hvis man ønsker to 'baggrundsbilleder' ... :(
Avatar billede lklingenberg Nybegynder
27. august 2003 - 12:50 #17
næ, jeg kan heller ikke komme det meget nærmere - underligt at to fixed baggrunde ikke virker i IE. Min erfaring er ellers at det er en rimelig tilgivende browser (= man kan kode dårligt og alligevel se det i IE ;-).
Avatar billede Tony Juniormester
27. august 2003 - 12:50 #18
klinge >> kan du måske prøve at sætte en transperant udg. af logoet ind ?
Avatar billede lklingenberg Nybegynder
27. august 2003 - 12:52 #19
tænker du på logoets baggrund?
Avatar billede Tony Juniormester
27. august 2003 - 12:54 #20
Ja
Avatar billede lklingenberg Nybegynder
27. august 2003 - 12:54 #21
bedre idé: sætte div omkring teksten, sætte baggundsfarven til transparent og lade z-index bestemme layer. Se ovenstående link igen.
Avatar billede Tony Juniormester
27. august 2003 - 12:54 #22
Fjing fjong - det er i orden nu :)
Avatar billede Tony Juniormester
27. august 2003 - 12:56 #23
Det er ved at være tæt på !! - prøv lige at sætte refresh-raten op ...
Avatar billede lklingenberg Nybegynder
27. august 2003 - 12:59 #24
->tony:
Den er sat til 1 ms - det er vist det mindste den kan sættes, eller...?

->xbobby:
Jeg tror det er den løsning der kommer tættest på men IE6. Men tonys løsning virker ikke i alle browsere. Så må du lade en javascript/asp funktion finde brugerens browser og lade dette bestemme hvordan det vises (heldigvis virker begge løsninger i Opera, der kan identificeres som IE).
Avatar billede roenving Novice
27. august 2003 - 13:00 #25
lklingenberg 27/08-2003 12:43:02

3. Internet Explorer forsøger _kun_ at rendere efter standarderne, nå linket til dtd'en er med ...
Avatar billede lklingenberg Nybegynder
27. august 2003 - 13:02 #26
->roenving:
ok, men det gør jo ikke situationen bedre (eller har jeg misforstået dit indlæg) ;-)
Avatar billede Tony Juniormester
27. august 2003 - 13:06 #27
Virker heller ikke i Mozilla 1.4 og så sætter den 'blue border' omkring billedet ...
Avatar billede Tony Juniormester
27. august 2003 - 13:09 #28
xbobby >> Du skriver:

"På grund af den måde siden er bygget op er det ikke muligt at lave de to billeder til et enkelt billede og derved løse problemet, ..."

Hvordan er siden da opbygget ?

- kan du vise os den (eller et eksempel) ... måske er der en anden 'work around' på de elementer der måtte være i vejen for, at du kun bruger ét baggrundsbillede ...
Avatar billede lklingenberg Nybegynder
27. august 2003 - 13:12 #29
->tony 13:06:13:
K-Meleon har også problemer med javascript-løsningen (og NS4.7 vil slet ikke samarbejde om noget af modellerne ;-). Derfor er man også tvunget ud i en browser-tjek-redirect-dims (øv!) hvis det skal virke.
Avatar billede roenving Novice
27. august 2003 - 13:15 #30
Og heller ikke med Mozilla/Gecko 1.5 er den der ...
Avatar billede Tony Juniormester
27. august 2003 - 13:19 #31
Ja, klinge - det er noget være skrammel :(

Der må da være noget man kan gøre på siden ellers ... flytte andre img. op i noget div eller tabel-halløj, så man kan sætter ét baggrundsbillede ...
Avatar billede lklingenberg Nybegynder
27. august 2003 - 13:23 #32
->roenving 13:15:06:
Til gengæld sluger både K-Meleon 0.6, Firebird 0.6, Mozilla 1.4, Netscape 7, Opera 7 og Opera 6 den første løsning (http://lknet.dk/test/4/). Det er KUN IE der er problembarnet i denne sammenhæng.

->tony 13:19:54:
Jeg synes jeg har prøvet alt efterhånden - uden held. Men hvis nu ham xbobby svarede på dit indlæg 13:09:02 kunne vi måske finde på noget... (den var til dig xbobby ;-)
Avatar billede Tony Juniormester
27. august 2003 - 13:36 #33
ja, klinge - både du og roenving går som altid frisk til makronerne :)

... måske xbobby er exit :0)
Avatar billede lklingenberg Nybegynder
27. august 2003 - 13:39 #34
Det håber jeg s.. ikke - så får han bank ;-)
Nå, men uanset om xbobby gider lege med os eller ej, var det nu meget sjovt at fumle med. Jeg lader eksemplerne stå.
Avatar billede xbobby Nybegynder
27. august 2003 - 16:14 #35
Hej igen
Man kan da heller ikke forlade jer uden der sker spændende ting, som jeg ikke har nået at efterprøve endnu, da jeg lige er kommet hjem.

Men jeg smider lige et link på for så har I hverfald hvad det er for noget grafik jeg bruger og samtidig hvordan siden er bygget op, som der også blev spurgt om.

http://www.webskabeloner.dk/ZenFormaticaTest/index.html

Det er dejligt at se som I går til den :-)
// xbobby
Avatar billede lklingenberg Nybegynder
27. august 2003 - 16:27 #36
jamen, du bruger jo frames - det er jo roden til alt ondt ;-)
Nå spøg til side. Jeg går ud fra at der er "buddha"-figuren du gerne vil have stående selvom man scroller...?
Når du nu alligevel laver det i frames, hvad med et indføre en frame mere til venstre for selvet teksten og så lade budhha-figuren stå der alene. Jeg laver lige et eksempel - 2 min.
Avatar billede Tony Juniormester
27. august 2003 - 16:35 #37
klinge >> de to minutter er gået ;)

xbobby >> findes overhovedet nogen måde hvorpå vi kan overtale dig til at fravælge frameteknologien ? ... f.eks. Google hader den ...
Avatar billede lklingenberg Nybegynder
27. august 2003 - 16:37 #38
<frameset cols="20%,*">
  <frame name="left">
  <frameset rows="20%,*,10%">
    <frame name="top">
    <frame name="contents">
    <frame name="bottom">
  </frameset>
  <noframes>
  <body>
      <p>Bla bla bla.</p>
  </body>
  </noframes>
</frameset>
Avatar billede lklingenberg Nybegynder
27. august 2003 - 16:44 #39
Avatar billede lklingenberg Nybegynder
27. august 2003 - 16:47 #40
Please, xbobby, lyt til tony! Det er ikke kun Google der har problemer med frames...
Avatar billede lklingenberg Nybegynder
27. august 2003 - 17:47 #41
Hvad med noget i retningen af dette:
http://lknet.dk/test/4/index4.htm
Avatar billede lklingenberg Nybegynder
27. august 2003 - 18:11 #42
->xbobby:
Hvis du overvejer ovenstående metode vil jeg godt fortælle lidt om hvorfor jeg har gjort som jeg har gjort - det er ikke helt tilfældigt flikket sammen.
Avatar billede Tony Juniormester
27. august 2003 - 19:30 #43
klinge >> når du er så flot i gang, så 'frys' lige menuen oxo ... ;-)
Avatar billede lklingenberg Nybegynder
27. august 2003 - 19:37 #44
->tony:
jamen, det er jo bare at sætte menu-div'en til position: fixed;
Avatar billede lklingenberg Nybegynder
27. august 2003 - 20:07 #45
øv, skidtet virker endnu engang ikke i IE6 :-(
Avatar billede lklingenberg Nybegynder
27. august 2003 - 20:11 #46
->tony 19:30:19:
jeg er bange for at en flydende menu kun vil være muligt med din javascript funktion. Endnu en gang brokker (brækker!) IE6 sig over to fixed elementer (selvom den ene er et blokelement og den anden et billede i et blokelement).
Avatar billede lklingenberg Nybegynder
27. august 2003 - 20:39 #47
Det går først nu op for mig (do!) at problemet for xbobby slet ikke er buddha-figuren, men det faktum at der både er en buddha-figur og et ying og yang billede. Hm, så er vi jo tilbage ved udgangspunktet :-(  Jeg er bange for at frames-løsningen er den eneste der kan få IE til at acceptere to baggrunde (den ene som almindelig billede i left-frame og den anden som css-defineret background)...
Men, jeg vil nok have lov at sige at det er lidt spil af båndbredde at hente to så store billeder ind - selvom de bliver cachet. De fylder tilsammen 27kb - eller tre gange så meget som selve html-dokumentet som i forvejen er temmelig teksttung!
Avatar billede Tony Juniormester
27. august 2003 - 20:45 #48
klinge >> Tjaa, ellers er vi tilbage ved frames ... hvad med en iframe i øvrigt, er der noget at gøre der ??

... eller, har vi nogle muligheder med f.eks.:

<?php

include ("min_baggrund.php");

?>

<?php

include ("min_menu.php");

?>
Avatar billede xbobby Nybegynder
27. august 2003 - 21:48 #49
Der er godt gang i snakken kan jeg se

Jeg har prøvet javascript versionen, men det ser ikke så godt ud at budda ryster som en gammel mand :-)

Jeg har så gået videre med frame versionen og den kan I lige kikke på:
http://www.webskabeloner.dk/ZenFormaticaTest1/frametest.html

Personligt syntes jeg ikke siden er for tung de to store billeder får jeg til 17 kb, de sidste 10 kb er knapperne og de to stjerner, og selve knapper bliver afløst et stylesheet på et senere tidspunkt, så ingen problemer der, som jeg ser det.

Jeg tror at siden ender op med en 20 kb for graikkens vedkommende og det er godt nok til mig.

Jeg prøvede at være inde på noget af det siste du har lavet (index 4, men fik en fejlmeddelse, var det fordi du er ved at pille ved det?

Den der med framesættet er der ingen vej ud om gooegle eller ej, da ham jeg laver det for har lavet en database til kunder, som bygger over et framesæt.
Avatar billede lklingenberg Nybegynder
28. august 2003 - 00:09 #50
->tony:
Jeg har aldrig arbejdet med iframe, men det kunne godt være en løsning. Problemet er at få ying og yang til at hænge sammen om jeg så må sige.

->xbobby:
Livet ville blive meget nemmere hvis yang og yang tegnet kun sad i indholdsrammen og du lod copyright informationerne stå nederst på den side (dvs. ikke i en ramme for sig). Se http://lknet.dk/test/4/index3.htm. Så ville du uden problemer kunne få dine frames og din grafik til at passe sammen

Men HUSK det er ikke standard HTML - siderne dør i W3C's MarkUp validator. Ændringen af scrollbars er heller ikke standard CSS, men en IE-opfindelse.
Avatar billede lklingenberg Nybegynder
28. august 2003 - 00:35 #51
Så tror jeg den er der (dog stadig med ikke-standard HTML frames og med copyright informationerne i bunden):
http://lknet.dk/test/4/index5.htm
Avatar billede Tony Juniormester
28. august 2003 - 07:38 #52
Godt gået klinge !

***
Ad. IE farvede scrollbars:
Det er helt korrekt, at du ikke kan få W3's 'blå stempel' hvis du farver din scrollbar, men er det nødvendigt ... altså, at få det 'blå stempel' ...

Måske du kunne begrænse din tekst (i hvert fald på forsiden), så scrollbaren  undgås - for køn, til den farvesammensætning der er på siden nu, er den bestemt ikke ...
Avatar billede lklingenberg Nybegynder
28. august 2003 - 09:20 #53
->tony 07:38:17:
Om man vælger at følge w3c's standarder (css såvel som html) er jo op til den enkelte udvikler. Jeg følger dem altid. Dels fordi jeg er passioneret standard-koder, dels fordi det øger brugervenligheden og dels fordi det er en måde hvorpå jeg kan være næsten sikker på at siderne tolkes ens - forudsat at browserne tolker ens ud fra standarderne og det gør de nyere browser efterhånden ganske fint (og så er der undtagelserne, hvad denne marathonforestilling er et tydeligt bevis på).

Mht. farvede scroll-bars, så har jeg ikke erfaring med at det får ikke-IE browsere til at gå i sort, så jeg vil betragte det som en mindre overtrædelse ;-) Når man anvender ikke-standard css skal man som minimum sikre sig at det ikke får nogle browsere til at te sig underligt. En anden diminsion af farvede scroll-bars er brugervenligegheden. Det går både på genkendeligheden (folk kan lide genkendelige elementer) og på længden af et dokument, som jeg mener ikke bør fylde meget mere end et skærmbillede [brugerundersøgelser viser at folk ikke gider læse lange tekster og ikke bryder sig om at rulle, ref. Jacob Nielsen, Godt webdesign, IDG 2001].
Avatar billede xbobby Nybegynder
28. august 2003 - 09:50 #54
Hej med jer igen - sikken I kan :-)

Jeg er godt tilfreds - håber også at I har fået mange gode snakke.

Som jeg ser det så har både Iklingenberg og tony breindal bidraget lige meget, så hvad siger I til at dele de point der er i dette spørgsmål.

Hvis I kan blive enige om det så syntes jeg at tony også skal smide et svar ind.

Jeg kikker her forbi i aften :-)
Avatar billede lklingenberg Nybegynder
28. august 2003 - 09:52 #55
tony skal bestemt have del i lagkagen!
Avatar billede Tony Juniormester
28. august 2003 - 10:14 #56
Tak for venligheden, men nej tak.

klinge har lavet det helt store arbejde her ... og så runder hans pointregnskab vist med dette spørgsmål et helt antal tusinde :-)
Avatar billede xbobby Nybegynder
28. august 2003 - 18:43 #57
Dyb respekt - og tak for hjælpen til jer begge

Tak for en fed indsats!

//xbobby :-)
Avatar billede lklingenberg Nybegynder
28. august 2003 - 21:45 #58
->xbobby:
Velbekomme! Det var en af de mere genstridige opgaver, men rart at "kunden" er tilfreds - og så lærte jeg noget om fixed positionering i css ;-)

Der er noget med placeringen af yiang-yang figuren der ikke helt er løst endnu - når der indsættes scroll-bars i browseren hopper det lidt i horisontalt niveau (bredden af scroll-bars). Måske du skulle ændre lidt på grafikken og lade dem positioneres i venstre side, så de er uafhængige af scroll-bars. Kan du følge mig?
Avatar billede xbobby Nybegynder
29. august 2003 - 15:21 #59
Tak for din opmærksomhed, men jeg kan ikke se nogen problemer på min testside

http://www.webskabeloner.dk/ZenFormaticaTest1/frametest.html  (IE6)

men derimod på din testside kan jeg se en lille forskydning at grafikken

http://lknet.dk/test/4/index5.htm (er den den du tænker på ?)

Når jeg ønsker at de skal trække til højre side er de fordi at der i top pg bund frame er en difference på 17 px, da der ikke er nogen scrollbar, derfor har jeg lagt et stykke grafik ind i top og bund som fylder de 17 px, det fungere bedst at den er højrestillet fordi grafikken så klæber sig til til den højre side, hvorimod hvis jeg gøre det i venstre side så får jeg problemer når når går op i en opløsning der er større end 1024 x 768, da jeg ønsker at siden skal udvide sig i bredden ved en højre opløsning, så det er baggrunden for mit valg :-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester