Style-problem

Tråden skapades och har fått 25 svar. Det senaste inlägget skrevs .
1

Tjenare,

Sitter med ett litet problem med min kod. Någon som kan ge mig en puttning i rätt riktning varför detta inte fungerar. DreamWeaver pratar om parsing errors och liknande på raden där jag angett font familjen. Om jag ändrar storeken på fonten så ändras inget på sidan där jag testar koden. Så nått e galet.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transi...">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
<title>content</title>
<style type="text/css">

</style></head>

<body><span class="style1">
<?PHP
 $number = "5";
 include("/var/www/crave/nyhetsadmin/show_news.php");
?></span>
</body>
</html>

Är även lite osäker på den här raden... ska jag avsluta som jag gjorde nu med </span> eller?

<body><span class="style1">
<?PHP
 $number = "5";
 include("/var/www/crave/nyhetsadmin/show_news.php");
?></span></body>
</html>
  • Oregistrerad
  • 2006-03-10 13:52

style1 {font-family: Verdana, Arial, Helvetica, sans-serif font-size:20px}
skall vara
style1 {font-family: Verdana, Arial, Helvetica, sans-serif; font-size:20px}

observera ; i den ändrade raden. För att det skall bli lättare för dig att upptäcka sådant så är det en fördel om du indenterar din kod genom att skriva den raden som nedan istället.

style1 {
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size:20px;
}

Då ser du ju lite lättare var dina block börjar och slutar.

Och ja, <span> skall avslutas med </span>

Tack så mycket för hjälpen, men det blir fortfarande inte större text. Nått är galet fortfarande.

  • Oregistrerad
  • 2006-03-10 14:07

Oj, missade att det inte var nån . framför style1. Det måste du ha för class anpassningar. I detta fallet kan du ju tom skirav span.style1 om du vill och då gäller ändringen bara span tagen.

.style1 {
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size:20px;
}

Haha, du är kungen.
Då kommer vi osökt in till sista frågan (bear with me please).

Så här ser koden ut nu:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transi...">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
<title>content</title>
<style type="text/css">

</style></head>

<body>
<span class="style1">
<?PHP
 $number = "5";
 include("/var/www/crave/nyhetsadmin/show_news.php");
?></span>
</body>
</html>

Detta är en "main" frame i ett frameset. I denna läggs nyheterna. Då det börjar bli många nyheter så kommer man börja scrolla för att att läsa lite äldre nyheter. Men då man scrollar så följer bakgrundsbilden med, den scrollas också. Och eftersom jag inte gjort bilden så att den repeteras snyggt, så undrar jag om det finns nån liten kodsnutt som säger åt bilden att stå still. Vill att bara texten ska scrollas.

Det går att göra koden smidigare genom att ta bort span-elementet (som dessutom innebär att du bara får ha inline-innehåll, det vill säga text och bilder - inga stycken, rubriker eller listor till exempel):

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transi...">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
<title>content</title>
<style type="text/css">
body {
background: url(images/main.jpg) no-repeat fixed;
font: 10px Verdana, Arial, Helvetica, sans-serif;
}
</style>
</head>
<body>
<?PHP
 $number = "5";
 include("/var/www/crave/nyhetsadmin/show_news.php");
?>
</body>
</html>
Ursprungligen av system.log:

Det går att göra koden smidigare genom att ta bort span-elementet (som dessutom innebär att du bara får ha inline-innehåll, det vill säga text och bilder - inga stycken, rubriker eller listor till exempel):

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transi...">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
<title>content</title>
<style type="text/css">
body {
background: url(images/main.jpg) no-repeat fixed;
font: 10px Verdana, Arial, Helvetica, sans-serif;
}
</style>
</head>
<body>
<?PHP
 $number = "5";
 include("/var/www/crave/nyhetsadmin/show_news.php");
?>
</body>
</html>

Vill tacka er alla för hjälpen. Skulle bara vilja veta en sak. Den där omskrivningen smidifierade (nytt ord!) det hela, men det verkar inte som om PCvärlden accepterar den där:
background: url(images/main.jpg) no-repeat fixed;

I Safari så syns bakgrunden. Men varken Firefox eller IE på PC visar bakgrunden.

Ursprungligen av Daniel Eriksson:

I Safari så syns bakgrunden. Men varken Firefox eller IE på PC visar bakgrunden.

Koden ser rätt ut och det fungerar överallt när jag testar. Det är inte så att sökvägen till bilden inte stämmer? Det är säkrare att ange den med utgångspunkt i roten, dvs /images/main.jpg.

Styr man det i frame-setet eller i denna main.php?

Så här kanske...

body {
background-image: url(images/main.jpg);
background-attachment: fixed;
background-repeat: repeat-x;
}

Ursprungligen av tobiwan:

Så här kanske...

body {
background-image: url(images/main.jpg);
background-attachment: fixed;
background-repeat: repeat-x;
}

Tack, det fixade biffen.

Ursprungligen av Danne V:

I flera stilar ovan saknas semikolon före sista klammern. Verkar som om ingen kommenterat detta.

Var inte medveten om att det behövdes på sista raden innan avslutande klammern. IE för PC och Safari verkar klara av det ändå.
Jag vill naturligtvis lära mig det korrekta, så jag tackar för informationen, koden är uppdaterad.

  • Medlem
  • Karlstad
  • 2006-03-10 17:44
Ursprungligen av Daniel Eriksson:

Tack, det fixade biffen.

Var inte medveten om att det behövdes på sista raden innan avslutande klammern. IE för PC och Safari verkar klara av det ändå.
Jag vill naturligtvis lära mig det korrekta, så jag tackar för informationen, koden är uppdaterad.

Jo, det funkar ofta utan klammern, men inte alltid.
Vanlig html är ganska förlåtande, men har för mig att just php är extremt känslig och måste ha absolut rätt kod. Har man inte klammern med i inline styles, så blir det alltså parsing error eftersom koden inte "går jämnt ut".

  • Medlem
  • Karlstad
  • 2006-03-10 14:45

I flera stilar ovan saknas semikolon före sista klammern. Verkar som om ingen kommenterat detta.

Ursprungligen av Danne V:

I flera stilar ovan saknas semikolon före sista klammern. Verkar som om ingen kommenterat detta.

Det behövs inte. Det krävs bara mellan deklarationer. Men det är smart att alltid avsluta varje deklaration med semikolon ändå så man inte riskerar att glömma det.

  • Medlem
  • Karlstad
  • 2006-03-11 13:13
Ursprungligen av system.log:

Det behövs inte. Det krävs bara mellan deklarationer.

Jo, det behövs visst. En del webbläsare kräver ett semikolon för sista klammern för att respektera stilen.
Exempel: http://99mac.se/forum/showthread.php?t=94736

Ursprungligen av Danne V:

Jo, det behövs visst. En del webbläsare kräver ett semikolon för sista klammern för att respektera stilen.

Nej, det behövs inte .

Från CSS 2.1, Syntax and basic data types, Declarations and properties:

"Because of the way selectors work, multiple declarations for the same selector may be organized into semicolon (;) separated groups."

Vilket betyder att det måste vara semikolon mellan varje deklaration, men inte efter den sista, vilket också är hur många exempel i W3C:s CSS-specifikationer är utformade.

För att kolla om någon webbläsare som används i dag möjligen har problem med regler som saknar semikolon efter den sista deklarationen gjorde jag ett litet test. Jag lyckades inte hitta någon webbläsare som har problem med det. Inte ens Internet Explorer bråkar.

Så nej, semikolon behövs faktiskt inte efter sista deklarationen i en regel. Men jag rekommenderar definitivt att man alltid använder det ändå.

  • Oregistrerad
  • 2006-03-10 15:24

Om du vill lära dig mer om css så har w3schools en rätt bra snabb tutorial. http://www.w3schools.com/css/ deras övriga tutorials är bra också för övrigt.

Har jag lyckats glömma nått semikolon eller liknande?

  • Medlem
  • Karlstad
  • 2006-03-23 14:12

Nä.
Men det kan vara att en del läsare inte fattar VAR du vill ha bakgrunden.
Så prova lägga till "top" i stilen:

<style type="text/css">
body {
background: url(images/main.jpg) no-repeat fixed top;
font: 10px Verdana, Arial, Helvetica, sans-serif;
margin-left: 0px;
margin-top: 0px;
margin-right: 0px;
margin-bottom: 0px;
}
</style>

Jag fixade det, problemet är att jag vet inte säkert vilka av ändringarna som löste det.
Jag la till Danne V:s förslag, och tog bort en rad som av någon anledning hade smugit sig in:
Background: url()

Det låg alltså två Background i samma body. Låter rätt troligt att det var det sistnämnda som gjorde att det inte fungerade. Safari tog den första i koden, medan IE o FF i PC-miljö tog den andra.

Detta är en prövning utan dess like, men man lär sig hela tiden nått nytt. Dykte på ännu ett problem nu. Jag har gjort två styles i en php-fil:

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
<title>MEDIA</title>
<style type="text/css">

</style>
</head>
<body>
<p class="style2">Songs</p>
<p class="style1"><a href="music/WYS.mp3">When You Shine</a></p>
<p class="style1"><a href="music/WOD.mp3">Wings of Desperation</a></p>
</body>
</html>

Det funkar sisådär kan jag säga. Den verkar ignorera style 1 totalt. Dreamweaver varnar på hela style1 och säger att det är ett parsing error för Firefox. Men det funkar inte i någon browser.

Vilket gytter. Någon som tror sig kunna identifiera problemet.

Hade inget med Firefox att göra. Alla browsers gav samma varning i DW. *suck*

Då jag tog bort <style type="text/css"> så började det fungera. Räcker det om jag definierar det en gång per dokument? Trodde det var för varje "avdelning"...

  • Medlem
  • Karlstad
  • 2006-03-28 17:42
Ursprungligen av Daniel Eriksson:

Då jag tog bort <style type="text/css"> så började det fungera. Räcker det om jag definierar det en gång per dokument? Trodde det var för varje "avdelning"...

Är det FORTFARANDE crave.nu det handlar om?
I så fall: spara filen som du har som heter "content.php" nånstans som backup. Testa sedan bifogade fil istället. Gör den det, så stoppa in en meta refresh tag i head på index.html som styr användaren till content.php istället.

Ska kolla vad du gjort vid tillfälle. Förklarade lite konstigt kanske. Jag löste problemet genom att ta bort <style type="text/css"> så det är inga större problem längre.

Och ja, det är crave.nu. Jag är ingen större kodare, så jag tenderar att hamna i lite fler problem än du

1
Bevaka tråden