View Single Post
Limited edition
Moff's Avatar
Sitat av 0xFF Vis innlegg
Du kan bruke <span> istedet for <p>
Vis hele sitatet...
Bør være litt forsiktig med å foreslå <span> som en erstattning for <p>; disse to har helt forskjellige bruksområder.

Det var litt vanskelig for meg å forstå nøyaktig hva det er problemet er. Slik du (TS) beskriver det, så sier boken din at denne koden:

Kode

<p>Ola Nordmann</p>
<p>That’s my name.</p>
... skal vises på én linje fordi nettleseren ignorerer linjeskift (carriage return).

Dette er feil, og hvis boken din faktisk sier dette, så bør du ikke bruke den for å lære HTML.

Nettleseren din skal vise dette som to linjer, slik:

Ola Nordmann

That’s my name.
Vis hele sitatet...
Legg merke til det ekstra mellomrommet mellom linjene; dette er også noe nettleseren din skal vise. Selv om det teknisk sett er to linjer med tekst, så skal det være et tydelig markert mellomrom mellom dem. Det er fordi <p> (paragraph) er en avsnitt-kode. Et avsnitt er en sammenhengende tekst som er adskilt fra andre elementer med et lite mellomrom (ikke et linjeskift, men en margin).

Jeg kan også utdype dette med at nettleseren "ignorerer" linjeskift i koden din. Dette er korrekt. I et HTML-dokument så har ikke linjeskift noen betydning. Hvis du skriver koden din slik:

Kode

Ola
Nordmann
... så vil nettleseren din vise det slik:
Ola Nordmann
Vis hele sitatet...
Om du derimot VIL ha et linjeskift på et bestemt sted - kun et linjeskift, ikke noe avsnitt eller annet ræl - så skal du bruke <br> ("break"), slik:

Kode

Ola<br>
Nordmann
Jeg sjekket linken din, og det ser ut som det er et problem med måten du lagrer nettsiden din på. Hvis du tar en kikk på kildekoden for nettsiden så vil du se at du har et HTML-dokument med <head> og <body>-tags som normalt, men inne i <body>-taggen din så har du enda et HTML-dokument. Et annet problem er at noen av <-tegnene er HTML-encoded, slik at de tolkes som symbolet "<" i stedet for koden "<". Alle symboler kan encodes på en måte som gjør at datamaskinen tolker dem som et symbol i stedet for en kode. "<" encodes som "&lt;", mens > encodes som "&gt;". LT står for "less than" og GT står for "greater than", som er matematiske operatorer.

Her er kildekoden til nettsiden din:

Kode

<html><head>
<!-- Global site tag (gtag.js) - Google Analytics -->
<script async src="https://www.googletagmanager.com/gtag/js?id=UA-45123781-1"></script>
<script>
  window.dataLayer = window.dataLayer || [];
  function gtag(){dataLayer.push(arguments);}
  gtag('js', new Date());

  gtag('config', 'UA-45123781-1');
</script>
<script>
  window.dataLayer = window.dataLayer || [];
  function gtag(){dataLayer.push(arguments);}
  gtag('js', new Date());

  gtag('config', 'UA-114607373-1');
</script><title>Practice code</title><link rel="stylesheet" href="exercise-answers.css" media="screen"><style>
  .amzAd {
    width: 110px;
    height: auto;
    float:left;
    margin-right: 30px;
}
.clear {
    clear:both;
}

</style>
</head><body>&lt;html><br>&nbsp;&nbsp;&lt;head><br>&nbsp;&nbsp;&nbsp;&nbsp;&lt;title>Practice&lt;/title><br>&nbsp;&nbsp;&lt;/head><br>&nbsp;&nbsp;&lt;body><br>&nbsp;&nbsp;&nbsp;&nbsp;Mark&nbsp;Myers<br>&nbsp;&nbsp;&lt;/body><br>&lt;/html><script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
</body></html>
Alt ser bra ut helt til du kommer ned til <body>. Der ser du at du har begynnelsen på enda et HTML-dokument med encoding;

Kode

<body>&lt;html><br>&nbsp;&nbsp;&lt;head><br>...
Dette er grunnen til at ting ser ut som det gjør. Jeg kan ikke svare for hvorfor dette skjer, men noe sier meg at du må gjøre noe med måten du lagrer og publiserer nettsiden din på. Hvilken tjeneste er det du bruker?