webForumDet fria alternativet

Anpassa text-scrollruta efter tabellcellstorlet?

14 svar · 469 visningar · startad av Mattias

MattiasMedlem sedan mars 2000205 inlägg
#1

Jag har hittat (och fått tillåtelse att använda) ett javascript som skapar en vit ruta där en bestämd text rullar upp. Denna har jag tänkt lägga på en hemsida jag har, men när jag lägger den i aktuell tabellcell bildas svarta kanter runt den vita bakgrunden, vilket ser fult ut. Eftersom jag är apdålig på javascript undrar jag hur jag enklast anpassar javascriptrutan efter storleken på tabellcellen eller hur kan jag annars kan gå tillväga för att få bort de svarta kanterna?

En testsida med tabell och javascript finns på följande URL:

http://hem.fyristorg.com/mnx/Startsida.asp

Mycket tacksam för hjälp och förslag!

OhrstromMedlem sedan aug. 200216 inlägg
#2

Nu ska jag egentligen inte säga något för jag kan heller inte javascript...

Men:

position:relative;overflow:hidden;**width:125;height:125;**clip:rect(0 302 102 0);

Jag _tror_ att de är värdena du vill ändra på...

EDIT: Lägger in lite mer här...

[code]
<script language="JavaScript">
if (document.all){
document.writeln('<marquee id="ieslider" scrollAmount=2 width=125 height=125 direction=up style="border:0 blackred;background-color:white">');
document.writeln(wholemessage);
ieslider.onmouseover=new Function("ieslider.scrollAmount=0");
ieslider.onmouseout=new Function("if (document.readyState=='complete') ieslider.scrollAmount=1");
document.write('</marquee>');
}
if (document.getElementById&&!document.all){
document.write('<div style="position:relative;overflow:hidden;**width:125;height:125;**clip:rect(0 302 102 0); background-color:white;border:0px solid black;" onMouseover="sspeed=0;" onMouseout="sspeed=1">');
document.write('<div id="slider" style="position:relative;width:&{swidth};">');
document.write('</div></div>');
}
</script></span>
[code]

Lycka till :)

MattiasMedlem sedan mars 2000205 inlägg
#3

Njäe, det verkar vara lite trixigare än att ändra de där värdena. Jag testade med att ändra dem till olika värden innan jag skrev mitt första inlägg, men de svarta kanterna uppenbarade sig ändå, antingen till höger eller under scrollrutan.

Jag har nu ändrat ifrån 125 till 150 på alla siffervärden i javascriptkoden och som synes finns det svarta fältet kvar under scrollrutan. Jag antar att de intillliggande tabellcellerna påverkar scrollrutans storlek, men det bör ju att få till en helt vit tabellcell/scrollruta ändå. Eller?

http://hem.fyristorg.com/mnx/Startsida.asp

OhrstromMedlem sedan aug. 200216 inlägg
#4

Mattias skrev:

Njäe, det verkar vara lite trixigare än att ändra de där värdena. Jag testade med att ändra dem till olika värden innan jag skrev mitt första inlägg, men de svarta kanterna uppenbarade sig ändå, antingen till höger eller under scrollrutan.

Jag har nu ändrat ifrån 125 till 150 på alla siffervärden i javascriptkoden och som synes finns det svarta fältet kvar under scrollrutan. Jag antar att de intillliggande tabellcellerna påverkar scrollrutans storlek, men det bör ju att få till en helt vit tabellcell/scrollruta ändå. Eller?

http://hem.fyristorg.com/mnx/Startsida.asp

pröva att öka värdena på clip (0 302 102(öka detta till 125 lr nåt) 0 0)

MattiasMedlem sedan mars 2000205 inlägg
#5

Det har jag också testat tidigare utan lycka. De värdena verkar för övrigt inte påverka alls eftersom man kan ta bort dem utan att det verkar påverka scrolltextrutan. :)

solbulleMedlem sedan mars 20015 287 inlägg
#6

Du kan börja med att ta bort den svarta färgen du har i cellen...

<TD width=92 bgColor=#000000 ......
MattiasMedlem sedan mars 2000205 inlägg
#7

Hehe... Ja, det kanske kan vara en fördel. ;) Har inte tänkt på det eftersom det låg i koden till själva scriptet och användes till att skapa kantlinjer på scrollrutan. Jag ska testa runt lite och se om jag kan få fram dem på annat sätt.

Tack för hjälpen!

MattiasMedlem sedan mars 2000205 inlägg
#8

Eftersom mina Javascript- (och tydligen även HTML-) kunskaper tryter lyckas jag inte fixa en tunn kantlinje runt scrollrutan. Jag har försökt ändra följande border-värden (i javascriptet) utan att nån kantlinje uppenbarar sig:

<span style="borderWidth:1; borderColor:black; width:100; height:100;">

style="border:1 blackred;background-color:white"

border:1px</b> solid black;

Det bör väl gå att få en kantlinje runt scrollrutan utan att använda sig av svart bakgrun i tabellcellen? Eller...?

JojoxxMedlem sedan juni 20004 308 inlägg
#9
<span style="border:solid black 1px; width:100; height:100;">
Innehåll...
</span>
MattiasMedlem sedan mars 2000205 inlägg
#10

Nu uppenbarade sig en kantlinje. Tack så mycket för hjälpen!

MattiasMedlem sedan mars 2000205 inlägg
#11

När jag ändå är igång och trixar med scrollrutan, så undrar jag om det är möjligt att få en liten vänstermarginal innan den scollande texten?

JojoxxMedlem sedan juni 20004 308 inlägg
#12

Prova att styla med text-indent:5px; för berört block/element.

MattiasMedlem sedan mars 2000205 inlägg
#13

Ja, det fungerade, men bara på den första textraden. Jag har nämligen delat upp textstyckena som läggs in i scrollrutan på en rubrik och en undertext och dessa plockar jag från en databas.

Så här ser koden ut för blocket där texten läggs in:

--- kod ---
<span style="border:solid black 1px; width:125; height:100;">
<p>
<ilayer width=100 height=100 name="slider1" bgcolor="white" visibility=hide>
</p>
<layer name="slider2" onMouseover="sspeed=0;" onMouseout="sspeed=1">
</layer>
</ilayer>
<script language="JavaScript">
if (document.all){
document.writeln('<marquee id="ieslider" scrollAmount=2 width=125 height=100 direction=up style="border:0 blackred;text-indent:5px;background-color:white">');
document.writeln(wholemessage);
ieslider.onmouseover=new Function("ieslider.scrollAmount=0");
ieslider.onmouseout=new Function("if (document.readyState=='complete') ieslider.scrollAmount=1");
document.write('</marquee>');
}
if (document.getElementById&&!document.all){
document.write('<div style="position:relative;overflow:hidden;width:125;height:100;clip:rect(302 0 102); background-color:white;border:0px solid black;" onMouseover="sspeed=0;" onMouseout="sspeed=1">');
document.write('<div id="slider" style="position:relative;width:&{swidth};">');
document.write('</div></div>');
}
</script></span>

--- kod ---

JojoxxMedlem sedan juni 20004 308 inlägg
#14

Fel av mig :) Prova med padding-left:5px;

MattiasMedlem sedan mars 2000205 inlägg
#15

Såja, nu ser det mycket bättre ut. Tack (igen)!

129 ms totalt · 3 externa anrop · v20260731065814-full.fb544a5a
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
125 ms — hämta tråd, inlägg och bilagor (db)