Avatar billede !asp Nybegynder
17. marts 2000 - 16:45 Der er 9 kommentarer og
3 løsninger

Baggrundsbillede i højre hjørne af toppen af en tabel

Jeg skal have lavet en menu med et billede i højre hjørne af tabellen.

Det skal således ud:
http://129.142.229.106/test/resultat.html

Her er filerne:
http://129.142.229.106/test/

Kan i hjælpe?
Avatar billede jnie Nybegynder
17. marts 2000 - 17:43 #1
<table background="bg_menu.gif"><tr><td></td></tr></table>
Avatar billede hatecaps Nybegynder
17. marts 2000 - 23:15 #2
<html>
<head>
    <title>test</title>
</head>
<body bgColor="#81a789" text="#ffffff" Link="#800080" aLink="#808000" vLink="#000080">

<table background="../images/bg_menu.gif" border=0 width="102" height="167">
<tr VALIGN="top">
  <td BGCOLOR="#000000">
    <font FACE="Verdana" SIZE="2">
    test
    <p>
    test 1 test
    <p>
    test 2 test test
    <p>
    test 2 test test
    </font>
  </td>
</tr>
</table>

</body>
</html>

burde faktisk se rigtig ud
Avatar billede prodic Mester
19. marts 2000 - 16:39 #3
Hvis du vil være helt sikker på at alle browsere kan se det,skal du ikke indsætte billedet som BG i din table.

Umiddelbart ville jeg slice billedet op i Photoshop eller lign. OG så lave din table, så kan browsere der understøtter de ældre standarder også se din fine menu!

Hvis du vil kan du jo poste en kommentar,så skal jeg nok lave det for dig,det tager ikke flere formiddage!
Avatar billede !asp Nybegynder
20. marts 2000 - 08:40 #4
Det skal laves på en anden måde end med <table background="../images/bg_menu.gif">

Et billede i en tabel, starter fra venstre og spreder sig ud mod højre. Indehaveren af sitet kan selv bestemme indholdet af menuen, og jeg kan derfor ikke præcist angive menuens bredde.

Beklager!
Avatar billede hatecaps Nybegynder
20. marts 2000 - 11:36 #5
ok, så har vi layers tilbage:

<html>
<head>
<title></title>
</head>
<body text="#ffffff">
<div id="baggrund" style="position:absolute;top:50px;left:50px;z-index:1">
<img src="bg_menu.gif">
</div>
<div id="menu" style="position:absolute;top:50px;left:50px;z-index:2">
<table>
<tr VALIGN="top">
  <td>
    <font FACE="Verdana" SIZE="1">
    test
    <p>
    test 1 test
    <p>
    test 2 test test
    <p>
    test 2 test test
    </font>
  </td>
</tr>
</table>
</div>
</body>
</html>

du kan ændre hhv. top:50px og left:px for at flytte rundt på menuen, så længe du ændre begge DIV tag's til det samme
Avatar billede !asp Nybegynder
20. marts 2000 - 11:55 #6
Det skal helst også virke til Netscape.

Kan man ikke putte layeret ind i tabellen, og sørge for at layeret er alignet right, da vi ellers får samme problem hvis menuen bliver for bred..
Avatar billede helle_fred Nybegynder
20. marts 2000 - 16:26 #7
Jeg har også forsøgt mig med en løsning. Den virker i begge browsere. Den tilpasser billed- og fontstørrelse efter browservinduet. Løsningen kræver som udgangspunkt et bedre billede i baggrunden.

Menuens bredde kan justeres i scriptet.

Her er den:

<html>
<head>
<script>
var menubredde=0
var billedstart=0
var billedbred=0
var bogstav=0

window.onresize =new Function("window.location.reload()")

</script>
</head>
<body >
<script>
if(document.layers) menubredde= (window.innerWidth-16)/2; else menubredde = (document.body.offsetWidth-20)/2
billedstart=0
billedbred=menubredde-billedstart
bogstav=menubredde*(100/1024)
if(bogstav<9)bogstav=9
</script>

<style>

div{position: absolute;
    left: 0px;
    top: 0px;
    font-family:"Verdana"}
</style>
<script>
document.write('<style>.tapet{width:'+menubredde+'px; z-index:1} </style>')
document.write('<style>.baggrund{left:'+billedstart+'px; z-index:2} </style>')
document.write('<style>.forgrund{color:white; font-size:'+bogstav+'px; width:'+menubredde+'px; z-index:3} </style>')
</script>
<div class="forgrund">
<B>Menu</B><P>
<UL>
    <LI>Test 1
    <LI>Test2
    <LI>Test 3
    <LI>Test 4
    <LI>Test 5
    <LI>Test 6
</UL>
</div>

<div class="tapet">
<script>
document.write('<table BORDER=0 CELLSPACING=0 CELLPADDING=0 WIDTH="'+menubredde+'px" HEIGHT="100%" BGCOLOR="black" >')
</script>
<tr>
<td><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR></td>
</tr>
</table>
</div>

<div class="baggrund">
<script>
    document.write('<IMG SRC="bg_menu.gif" WIDTH='+billedbred+'>')
</script>
</div>

</body>
</html>

vh Helle
Avatar billede hatecaps Nybegynder
20. marts 2000 - 17:01 #8
hmmm asp, mit sidste forslag virker fint i min netscape browser.

Avatar billede olebole Juniormester
24. marts 2000 - 05:47 #9
<ole>
Men denne her opfylder - i modsætning til de andre forslag - kravene:

<html>
<head>
<title></title>
</head>
<body text="#ffffff">

<div id="menu" style="position:absolute;top:50px;left:50px;z-index:2">
<table>
<tr VALIGN="top">
  <td>
    <font FACE="Verdana" SIZE="1">
    test
    <p>
    test 1 test
    <p>
    test 2 test test
    <p>
    test 3 test test
    </font>
  </td>
</tr>
</table>
</div>
<script language="JavaScript"><!--
var bredde = "";
var hoejde = "";
var myTable = "";
if (document.layers) {
    bredde = document.layers.menu.document.width;
    hoejde = document.layers.menu.document.height;
}else if (document.all) {
    bredde = document.all['menu'].offsetWidth;
    hoejde = document.all['menu'].offsetHeight;
}
myTable = "<table width="+bredde+" height="+hoejde+" bgcolor=black cellspacing=0 cellpadding=0>";
myTable += "<tr>\n<td valign=top align=right><img src='bg_menu.gif' width=102 height=167></td>\n</tr>\n</table>";
function writeTable() {
    if (document.layers) {
        document.baggrund.document.write(myTable);
        document.baggrund.document.close();
    }else if (document.all) {
        baggrund.innerHTML = myTable;
    }
}
// -->
</script>
<div id="baggrund" style="position:absolute;top:50px;left:50px;z-index:1">
<script>writeTable();</script>
</div>
</body>
</html>

Du starter med at skrive din menu i et lag. Checker lagets højde og bredde, hvorefter du skriver et table ind i det bageste lag - med højde og bredde i forhold til menu-laget. Billedet bliver selvfølgelig anbragt i øverste, højre hjørne.
Der er nogle ganske få pixels forskel i den måde IE og NS beregner størrelsen på (SURPRIZE...!!!), men det kan du selv prøve at korrigere for, hvis det - mod forventning - skulle genere ;-)

/VH
</bole>
Avatar billede hellfire Nybegynder
24. marts 2000 - 20:15 #10
Du sætter bare background="../images/bg_menu.gif" ind i <td> i stedet for bgcolor så det kommer til at se sådan ud:
<td background="../images/bg_menu.gif">

vh
Philip
Avatar billede olebole Juniormester
24. marts 2000 - 20:51 #11
hellfire >> duer ikke...han kan ikke skrive tekst henover flere celler - med mindre han arbejder i lag.
Avatar billede olebole Juniormester
28. marts 2000 - 02:58 #12
Hva' så !asp...???
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