Avatar billede eikhorsholm Nybegynder
30. oktober 2005 - 17:18 Der er 15 kommentarer og
1 løsning

vertical-align: middle i div?

Jeg har en div med nedenstående css:

#nav
{
background-image: url(b.gif);
float: left;
height: 35px;
margin: 30px 19px 21px 0px;
vertical-align: middle;
text-align: center;
width: 500px;}

når jeg har noget tekst i den, så bliver det ikke centreret vertikalt? Nogen idéer?

Jeg kører XHTML 1.0 Strict.
Avatar billede skovenborg Nybegynder
30. oktober 2005 - 18:13 #1
vertical-align har en anden betydning for tabeller end for andre html-elementer. I en tabelcelle forstås vertical-align som det du hentyder til, nemlig hvordan indholdet skal stå vertikalt. På andre elementer er det kun hvordan tekst på den enkelte linie skal stå vertikalt (fx hævet, sænket eller som her i midten). Effekten du søger kan altså ikke opnås med vertical-align medmindre du putter dit indhold ind i en tabel.

Der findes måske nogle små tricks, men jeg vil nu godt tillade mig at anbefale, at du bare putter tingene ind i en enkelt lille tabel, hvis det virkelig er så vigtigt.
Avatar billede knudgert Nybegynder
30. oktober 2005 - 22:23 #2
Du skal bruge
display: table-cell
så kan du få teksten midterstillet.
Understøttes ikke i IE, her skal noget script til.
Du kan se et eksempel på det på min hjemmeside
http://ellentoft.1go.dk/test/vertical.htm
Avatar billede olebole Juniormester
31. oktober 2005 - 00:20 #3
<ole>

Om du skal bruge script, kommer anpå, hvad du skal lave - men det er ikke til at se udfra det viste  :)

At skrive XHTML1.0 er under alle omstændigheder fjollet, da XHTML ikke er anvendelig på WWW de første par år ... og når det engang bliver brugbart, kan version 1.0 under ingen omstændigheder bruges.
Idag parses 99,9% af alle XHTML-dokumenter på WWW som dårlig, fejlfyldt HTML (ikke som XHTML) - så dine brugere ville være langt bedre stillet, om du skrev HTML4.01  ;o)

/mvh
</bole>
Avatar billede knudgert Nybegynder
02. november 2005 - 16:21 #4
>olebole
Det er jo din mening, andre mener noget andet.
Den side jeg henviste er skrevet i xhtml 1.1 og det vil jeg medgive, at man ikke bør bruge, men ikke xhtml 1.0.

Men iøvrigt har mit forslag ikke noget at gøre med om siden er skrevet i xhtml eller html, løsningen er den samme.
Avatar billede olebole Juniormester
02. november 2005 - 16:55 #5
Nej, det handler for mig ikke om meninger - men om viden. Mange har bare yderst vanskeligt ved at skelne mellem de to ting  :)

Prøv at sætte dig lidt ind i XHTML. Du kan f.eks. læse W3C's FAQ om HTML/XHTML ... der er såmænd ingen hemmeligheder i, at de nuværende XHTML-versioner er eksperimentelle - og ret beset er 1.0 jo rent legetøj. En anden løsning kunne være at læse disse to:
    http://www.eksperten.dk/artikler/537
    http://www.eksperten.dk/artikler/538

- og så må du meget gerne berige mig med viden om, hvor i substansen, du mener, jeg tager fejl. Jeg er lutter øren - og vild med at lære  :)

Vedr. det aktuelle spørgsmål er der i øvrigt ingen af os, der ved, hvordan koden ser ud - og ingen af os kan derfor sige noget somhelst begavet om, hvordan 'løsningen' ser ud.
Der kan være flere - og det er absolut ikke sikkert, at en sporadisk understøttet CSS-property kombineret med JavaScript er den eneste - endsige den bedste - løsning på spørgerens problem  :)
Avatar billede skovenborg Nybegynder
02. november 2005 - 17:56 #6
Hvor finder du præcis den FAQ henne? Jeg kan i hvert fald ikke se W3C på noget tidspunkt fraråder at bruge XHTML før version 2 - det er vel også bare din egen holdning, hvilken man da snildt kan være uenig i.

Jeg må hellere lige poste en tråd fra Usenet hvor jeg (kom til ;-) at give et link til de to artikler - de var ikke videre begejstrede skulle jeg hilse og sige:
http://groups.google.dk/group/dk.edb.internet.webdesign.html/browse_frm/thread/6831d9bb9f2e8001/3e54354a8105d2aa?tvc=1&q=Xhtml+1.1+underst%C3%B8tter+ikke+iframe!+Alternativer!!&hl=da#3e54354a8105d2aa

På nogle punkter giver jeg dem da egentlig også ret. Jeg synes det er nogle virkelig gode artikeler, som korrekt nok viser, at XHTML bliver parset som HTML hvilket i bund og grund jo ikke er meningen. At det skulle have noget mærkbar hastighedsforringelse tvivler jeg nu alligevel på.

Du skulle måske alligevel gøre opmærksom på, at XHTML1.0 som følger HTML Compatibility Guidelines (http://www.w3.org/TR/xhtml1/#guidelines) godt må serves som text/html (http://www.w3.org/TR/2002/NOTE-xhtml-media-types-20020801/#summary).

At XHTML1 ikke giver nogen mærkbar fordel fremfor HTML4.01 (strict vel!?!) med henblik på den kommende XHTML2-standard, kan nu også diskuteres. XHTML vil jo til hver en tid være lettere at konvertere til XHTML2 end HTML4. Der er måske ikke så stor en fordel ved at opgradere til XHTML, men da i hvert fald heller ikke til at degradere - hvilket det kunne lyde som om i dine artikler (selvom jeg nu ikke tror du mener det sådan).
Avatar billede skovenborg Nybegynder
02. november 2005 - 18:08 #7
btw - hvis XHTML2 bliver nogenlunde som det indtil videre ser ud til, så bør man næsten skrive hele koden om, hvis man vil udnytte de mange nyheder der kommer. Og det er vil være lige meget om man skrev XHTML eller HTML.
Avatar billede olebole Juniormester
03. november 2005 - 10:21 #8
http://www.w3.org/MarkUp/2004/xhtml-faq

Jeg har vist ikke nogen steder skrevet, at W3C i deres FAQ fraråder XHTML. Men hvis man læser, hvad de skriver, er det umuligt for mig at tro, nogen somhelst vil komme til andet resultat end, at XHTML ikke i øjeblikket har ét eneste fortrin fremfor HTML4.01.
Derimod parses XHTML (som jo er invalid HTML - og som en HTML-parser ikke er indrettet til at tolke) af browserens HTML-parser. Alt andet lige sætter man altså browseren til at lave arbejde, der er unødigt 'svært' for den.

Om det tager længere tid er egentlig ikke interessant. Der findes én eneste årsag til at bruge XHTML - nemlig, at dokumentet skal parses af browserens XML-parser.
Hvis man ved, forholdene er, som de reelt er, så er det for mig at se - og jeg undskylder udtrykket, men jeg kan ikke finde et bedre dækkende - ikke begavet at skrive XHTML. Hvad i alverden skulle begrundelsen være?  :)

Så vidt jeg ved, skriver jeg netop i artiklerne (jeg har ikke checket ligenu, men gør det senere på dagen), at version 1.0 kan serves som 'text/html' - men så er det jo langtfra XHTML ... det er helt ren HTML.

Jo, du kan bande på, jeg mener, man skal slette sine XHTML-DTD'er og skrive HTML4.01-strict  ;o)
At gå fra HTML4.01-strict til XHTML1.0 er i sig selv en degradering af koden - da denne overgang i sig selv ikke giver mening ... det er derimod en forplumring af begreberne.

"XHTML vil jo til hver en tid være lettere at konvertere til XHTML2 end HTML4"
Hvorfor nu det? Hvad er er nu lige forskellen (udover DTD'en) på HTML4.01-strict og XHTML1.0? ... ingen!  :)

XHTML1.0 parses af HTML-parseren og derfor scripter du formodentlig helt hen i skoven i forhold til XML-standarden. Kik i koden på de 'XHTML' baserede sites, du falder over - og du vil se, at stort set alle vil dræbe enhver XML-parser, de kommer i nærheden af.

Din kommentar (02/11-2005 18:08:10) er jeg helt enig i ... og så er det, jeg gerne vil vide, hvad årsagen skulle være til at overgå til XHTML1.0 på nuværende tidspunkt. Jeg går da udfra, at du som jeg mener, der altid bør være en begrundelse for de ting, man foretager sig. I modsat fald kan der meget vel være tale om en behandlingskrævende tilstand ... som man f.eks. kender det fra tvangshandlinger m.m.  ;D

I alt for høj grad følger kodere blindt efter div. intetvidende webguruer - og kaster sig som lemminger ud i at tilbede teknologier, hverken de eller deres 'lærere' kender en kæft til. Desværre kaster de sig ofte ud i nærmest religiøse korstog for at få andre til at kode ligeså bevidstløst, som dem selv.
Er man i tvivl, er det bare at se, hvordan markup og CSS anvendes - og følge tråde i div. koderfora.

HTML4.01 er en fortræffelig måde at øve sig i stringent markup. Desuden står det en helt frit for at øve sig i standardiserede DOM-ECMA bindings, som er en absolut nødvendighed i ægte XHTML (læs: version 2.0).
Tilmed udgiver denne standard sig ikke for at være noget, den ikke er - og man forfalder derfor ikke til at tro, man laver noget helt andet, end man i virkeligheden gør ... og (måske endnu vigtigere): Man bilder ikke andre noget vrøvl på ærmet. Hverken gennem ord eller handlinger.

Hvad folk måtte mene i tilfældige Google-groups, tager med fuldstændig sindsro. Kodere (og ikke mindst danske) hører til blandt de dårligst uddannede faggrupper - og ofte er de kemisk renset for teoretisk indsigt i det, de beskæftiger sig med (og udtaler sig om).

Min egen interesse blev vakt, mens jeg var ansat på Framfab. I 2001 var jeg front-end ansvarlig på Hydro-Texaco's erhvervssite - Vers.1.0 (jeg vil ikke sættes i forbindelse med den nuværende kode, tak) - og ifølge kravspecs skulle det være skrevet i 'XHTML-kompatibel' kode.
Årsagen var, at backend'en var bygget i HT's eget Lotus Notes miljø og gjorde brug af en AS400 som 'mellemstation'. Derfor var markup'en splittet op som XML-elementer, der ved bruger-requests blev stykket sammen - og fik indsat data fra Notes - i et rent XML-miljø. Derefter blev koden forsynet med en HTML-DTD og sendt til brugeren ... nu som absolut velformet HTML-kode  :)
Selvom der ikke var tale om ægte XHTML, var jeg i detaljen pisket til at lære, hvad XHTML var - og siden har jeg med stor interesse fulgt udviklingen ekstremt tæt.
Blot for at understrege, der ikke er tale om 'en pludselig indskydelse' ... jeg har faktisk brugt eksorbitant megen tid på XHTML og tilhørende emner  ;o)
Avatar billede skovenborg Nybegynder
03. november 2005 - 15:09 #9
Aaargh, jeg skrev en hel masse og så kom det ikke med >:-C Øvbøv, nu skal jeg jo gentage mig selv.

Først lige en bemærkning om, at det jeg skrev omkring W3C som frarådte XHTML "blot" var en dårligt formuleret sætning. Og det andet: Jeg synes bestemt dine artikler er gode - simpelthen fordi de viser en pointe ingen (åbenbart) som laver diverse tutorials om XHTML har fattet. Jeg kan udmærket godt se problemmet at XHTML bliver parset som HTML - hvilket browseren kan blive forvirret over og måske endda lave en fejl. Især ældre browsere må jo have nogle alvorlige problemmer hvor de må gætte sig til resultatet - men sådan nogle kan man jo alligevel aldrig stille tilfreds. At nogle tutorials så også anbefaler XHTML1.1 må jo så også siges at være en alvorlig fejl, da XHTML1.1 slet ikke må parses som HTML - og drejer det sig om 1.0 skal man jo ikke desto mindre gøre opmærksom på det faktum.

Jeg vil modsat dig så ikke gå så langt at anbefale folk med XHTML1.0 sider, at skrive dem om (igen) til HTML4.01. Jeg ville nu nærmere gøre dem opmærksom på at de bliver servet som text/html, og derefter må de prøve så godt de kan at følge http://www.w3.org/TR/xhtml1/#guidelines. Jeg kan udmærket godt se, at der ingen ordentlig pointe er i at skrive XHTML endnu, men at bøvle med at omskrive det hele til HTML? Aah, det mener jeg nu ikke.

Og jo, jeg vil da mene XHTML1.0 vil være lettere at skrive om til XHTML2 - selvom man skriver HTML4.01 med XHTML2 for øje. Arbejdet bliver måske ikke gjort meget lettere, men husk på alle de ulukkede tags - dem skal man jo fx ikke rette. Selvfølgelig er sagen en anden hvis man går ud fra det jeg skrev i 02/11-2005 18:08:10.

Dog skal jeg lige nævne jeg slet ikke har skænket scripts en tanke - måske fordi jeg aldrig selv bruger scripts til noget på de sider jeg laver (medmindre det er strengt nødvendigt).

Kort sagt: Jeg ville ikke selv direkte fraråde XHTML (1.0 kompitabelt med html altså) på samme måde som du gør. Men man bør i hvert fald kende sandheden omkring det.

P.S: Vi burde næsten starte en debat-tråd. eikhorsholm's spørgsmål er efterhånden temmelig afsporet... men derfor skal han da stadig svare tilbage (hhrmmhrmm ;-)
Avatar billede olebole Juniormester
03. november 2005 - 15:23 #10
Ulrik, jeg ved udmærket, det er detaljer, der skiller os - og jeg er ret sikker på, vi kunne få en frugtbar samtale face to face, der uden tvivl ville munde ud i stor enighed  :)

Min kommentar "Jo, du kan bande på ..." var måske også lige frisk nok. Det er nok et temperaments spørgsmål, om man ligefrem skal skrive større sites om - men jeg mener i hvert fald ikke, man bør påbegynde nye projekter i XHTML, før det er seriøst anvendeligt.

Umiddelbart har jeg ikke så meget mere (somom det ikke også var nok! hehe), så det er nok ikke nødvendigt at åbne en ny tråd  ;o)

PS: Angående indlæg, der 'bliver væk':
Det sker, hvis der går lang tid fra, du kommer ind på spørgsmålet - og du trykker 'Send'. Jeg har vænnet mig til 'Ctrl+A' - 'Ctrl+C' (måske p.gr.a. længden af mine indlæg ;). Havde jeg ikke gjort det, var min kommentar (03/11-2005 10:21:28) også skredet til 'De Evige Kommentarmarker' ... og _så_ var jeg fandeme blevet sur!  ;D
Avatar billede skovenborg Nybegynder
03. november 2005 - 15:29 #11
hehe, godt nok - jeg har heller ikke mere til den sag. Og så skal jeg måske lige nævne min seneste side blev skrevet i html4.01 strict - faktisk pga din artikel. Og jeg fortryder da overhovedet ikke :-)

Åhh, nu må jeg huske det med Ctrl-A Ctrl-C. Pyha, jeg tror jeg nåede det ;-)
Avatar billede knudgert Nybegynder
05. november 2005 - 00:54 #12
Jehg orker ikke debatten om xhtml konta html, men jeg svarede blot på, hvordan man centrere noget vertikalt i en <div>.
Avatar billede roenving Novice
06. november 2005 - 04:58 #13
>>knudgert

*lol*

-- men det er vel ikke særlig hensigtsmæssigt, at kun brøkdele af de besøgende får det samme ud af det, som der er intenderet ?-)

-- iøvrigt fatter jeg ikke bevæggundene til, at det skal være muligt at tildele forskellige html-elementer andre elementers egenskaber, man kan vel bare bruge de rigtige elementer ?o]
Avatar billede olebole Juniormester
06. november 2005 - 10:46 #14
Ulrik >> Det glæder mig  ;o)

knudgert >> Det har jeg dyb respekt for. Hvis jeg hele tiden skulle kæmpe en forgæves kamp for at finde argumenter for XHTML, ville jeg såmænd også bruge tiden på noget bedre  :)
Dog ville jeg nok finde på noget endnu bedre - for som roenving ganske begavet anfører ...  ;o)
Avatar billede eikhorsholm Nybegynder
06. november 2005 - 11:29 #15
Øh... Tror jeg lukker spørgsmålet. Pointene går til knudgert, da han har lavet et svar.
Avatar billede skovenborg Nybegynder
26. november 2005 - 17:06 #16
Ole >> Ja, så skriver jeg igen... men blot for at poste et lille link til en side jeg fandt netop omkring XHTML, som bliver servet som text/html:
http://www.hixie.ch/advocacy/xhtml

Ja, så røg argumentet med brug XHTML1.0 som er kompitabelt med HTML temmelig meget til jorden. Og ved kig på andre nyhedsgrupper er der også en bred enighed om, at XHTML absolut ikke er klar til brug på nettet (og bliver ikke forløbig). Ja, det er i hvert fald rart at høre det samme fra andre :-)
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