Nov 21, 2009

Indentation In Html

free web hosting
Open Discussion & Free Web Hosting > Computers & Tech > Designing > Web Design and HTML

Indentation In Html

Mordent
Whenever I start a new project one of the first things I do is put in a base index.php page. Yes, it's a .php file, but I won't be looking at the PHP just yet.

Normally, it looks a little something like this:

CODE
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
    <head>
        <title>Title</title>
        <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
        <link rel="stylesheet" type="text/css" href="style/reset.css" />
        <link rel="stylesheet" type="text/css" href="style/base.css" />
        <link rel="shortcut icon" href="images/favicon.ico" />
    </head>
    <body>
    </body>
</html>

I've already got a few basics set out that I tend to stick to. For instance, so far each of my projects has been XHTML Strict, which is why it's always up there. Similarly, I use the same character set, and (at least initially) have two CSS files called reset.css and base.css stored in a subdirectory called style.

This all looks lovely and so on, but then I start to add some PHP in as time goes on, and in order to keep the indentation looking right I have to put weird number of tabs in to my echos etc. Then I get a stage where I want to call the same function in different sheets, each one needing a different number of tabs to make it so that when you view the source it's easy to read.

So, I've been thinking, what if I didn't indent? That'd make the above page look like this:

CODE
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>Title</title>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
<link rel="stylesheet" type="text/css" href="style/reset.css" />
<link rel="stylesheet" type="text/css" href="style/base.css" />
<link rel="shortcut icon" href="images/favicon.ico" />
</head>
<body>
</body>
</html>

Is that so hard to read? In a decent HTML viewer (still working on getting Firefox to open up any View Source requests in Notepad++, if you know how to do let me know) it's all correctly coloured, has groupings around the open and close tags, etc.

This makes a clear distinction between HTML (i.e. no indentation) and PHP (where I indent my code as normal). That makes creating the site a lot easier, surely, as anything that's indented is code, anything that isn't is HTML. Normally I'm a big advocate of indentation, but when two different things are running parallel in one document having two different levels of indentation just doesn't look easy to read to me and never has. Any thoughts on how you'd do this?

Just as an example document, how would you indent the following PHP file?

CODE
<?php
$foo = some_function();
$bar = some_other_function('foo');
if ($foo > $bar)
{
another_function();
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>Title</title>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
<link rel="stylesheet" type="text/css" href="style/reset.css" />
<link rel="stylesheet" type="text/css" href="style/base.css" />
<link rel="shortcut icon" href="images/favicon.ico" />
</head>
<body>
<h1>Heading 1</h1>
<div>
<?php
if ($foobar == 'blah')
{
echo '<p>BLAH!</p>
';
}
?>
</div>
</body>
</html>

I would post how I'd normally do it, but I'd like to see what the general consensus on indents is while I think about it a little.

 

 

 


Comment/Reply (w/o sign-up)

faulty.lee
Generally as programmer would want to indent the code, to ease coding, reading and later one debugging. Indentation on HTML would not hurt the resulting display as whitespace are ignore by the browser. e.g.
<p> 1space<p>
<p> 2spaces<p>
would look the same. In fact, to actually place [spaces], you need to specified &nbps;
Further more, indentation normally happen outside of those HTML tags. If you happen have long text and would like to split then indent them, it's ok too as only the 1 whitespace after your last word of the line is recognized, the rest of those tabs and newline are ignored too.

These applies too to php code. There's really zero worries on php code, as it's parsed on the server side, having tons of whitespace will not effect anything other than hard drive's throughput (it's not like you're writing megabytes of codes, a decent image is anytime bigger that your code), and well, that's of a much much greater magnitudes compare to your internet bandwidth.

After looking at your sample, there's one thing i would like to highlight. If you're really going into writing a professional website, you should consider using template engine, such as smarty, or write up your own simple one. I did that most of the time, just having some code to load an html page and replace all the {VAR} tags i implanted in with what's it's suppose to be. Of cause smarty or other template engine can give you more functionality, if you need them.

These will ease your debugging and designing stage later on. For debugging, mixing HTML and php code can really mess up your coding, especially having to keep track of those tags. And after sometime, you might start to really mix them up. Just take you sample code as an example.
CODE
<?php
if ($foobar == 'blah')
{
echo '<p>BLAH!</p>
';
}
?>

Instead you could also this
CODE
<?php
if ($foobar == 'blah')
{
?>
<p>BLAH!</p>
<?php
}
?>


It might seems all that convenient, but you'll really feel the pain when you page start to grow. About designing, with both split up, you could pass the HTML to a designer and have it touch up without having to worry that he will disrupt your important php codes. If you're designing yourself, this could also ease your job, especially if you're using those WYSIWYG editor. Those editor don't really work well with mixed html and php.

So, thrust me, code and artwork(HTML) should be done separately.

 

 

 


Comment/Reply (w/o sign-up)

Mordent
I'd always felt the same way about keeping HTML and PHP separate, but never really looked in to ways of doing it to such a full extent. I'll have a look at template engines (although knowing me I'll insist on writing my own wink.gif), and - just for reference - I never use WYSIWYG editors. Everything I do I create from scratch, which means I know what's going on to a decent extent.

I realise whitespace is ignored by pretty much everything when it comes to web development, which is always useful. I'll admit to not being aware that you could get things to display in the way you showed above, so that's something new I've learned.

Right, time to go look at these here template-engine-thingamajigs. smile.gif

Comment/Reply (w/o sign-up)

faulty.lee
QUOTE(Mordent @ Aug 17 2008, 09:17 PM) *
although knowing me I'll insist on writing my own wink.gif)


I'm like that also. But now starting understand the meaning or "re-inventing the wheel".

Anyway, I forgot to add that you can actually get tools to compact your html to save download time for your viewer. Just search around in google. I would only do that after completion, as it makes debugging much much harder

Comment/Reply (w/o sign-up)

Mordent
QUOTE(faulty.lee @ Aug 17 2008, 06:49 PM) *
I'm like that also. But now starting understand the meaning or "re-inventing the wheel".

Anyway, I forgot to add that you can actually get tools to compact your html to save download time for your viewer. Just search around in google. I would only do that after completion, as it makes debugging much much harder

The wheel's not compliant to modern standards, it needs to be stripped back down to basics and rebuilt to your exacting needs. wink.gif

I'm not all that fussed about compacting HTML, but that's just me. My site's not currently meant to be...well, at all big. Anyway, after much googling and the like I found near-perfection in a simple little idea here. Taking his ideas apart and putting them back together again so I understood exactly what was going on was really useful and got me brushing up on my object-oriented code again. Sure, I changed it a fair bit, but that basic framework let me do pretty much exactly what I wanted and separating my function from my display. It's not as nifty as Smarty, and you do give any template designers free reign to do what they want with PHP, but as both roles are taken up by me at the moment I'm not too worried about that. wink.gif

Comment/Reply (w/o sign-up)


Got an Opinion! Express your Views! (no registration):-
Add your Reply/ Opinion/ Views/ Comments/ Suggestion/ Questions/ Queries etc.
Posts with decent grammar & English will be accepted and please refrain from profanities.
For asking a Question, We recommend you to sign-up (for free) so that you can track the topic easily.

Nature of your Post*: Opinion/ Reply/ Comments
Question/Query
Feedback to us.
       
Name   Email
Title/Question*

This textarea will convert to Rich-Text automatically (IE, Firefox, Chrome)

Similar Topics

Keywords : indentation, html

  1. Good Books For Html And Css Beginners
    (1)
  2. Style P And H? Html Tags
    (2)
    Well, I have found that css was very hard to predict and precise control their apperance. When mix
    and use the p and h? tags. Their apperaence were not identity. Place the h? tags within the p tag
    causes style error on both firefox and IE. So, anyone should do it reserved, instead, place the p
    tag with any h? tags will do the jobs on both browsers. Still learning it coz it much varies when
    doing styles. Tested it on XHTML 1.0 Strict....
  3. Yaml - (x)html/css Framework
    (2)
    The YAML (Yet Another Multicolumn Layout) Framework is an excellent open source project that helps
    you to create two or three columns (X)HTML/CSS floated layouts. This framework is very easy to use
    and allows you to modifiy it to your own needs, this framework offers some tools for rapid
    development of modern and accessible CSS layouts. QUOTE Yet Another Multicolumn Layout (YAML)
    is an (X)HTML/CSS framework for creating modern and flexible floated layouts. The structure is
    extremely versatile in its programming and absolutely accessible for end users. Based on w....
  4. Sitepoint's Css And Html Reference Sites
    (2)
    Recently the folks at SitePoint.com launched two excelent online reference sites for web designers
    and developers, the first one is the SitePoint CSS Reference and the second one is the SitePoint
    HTML Reference (Beta) . Both of them are free and available to anyone and everyone who needs to
    lookup any information related to CSS and HTML in an easy and fast way. The SitePoint HTML
    Reference (Beta) is still in progress. Also, both of them are very detailed and up-to-date on each
    subject and are focused not only to beginners because they covers from general to advance....
  5. Html Emails How?
    (12)
    How on earth do you create HTML emails? I have been searching Google for some time now and can find
    ABSOLUTELY no information what so ever on how to ACTUALLY create HTML content emails. It just a
    bunch of programs and Microsoft applications, or testing facilities, I don't need any of this,
    there must be some coding system to it? I tried emailing using basic direct HTML tags (like ), but
    it fails (it just shows ), so how can I do this? I am not looking for anything really fancy, I
    just want to use some basic bolding and font changes and things to make it look a ....
  6. Html Table Issue.
    (18)
    Does anyone know how I might create a HTML table but using pure CSS (div's and what not). I
    really have no idea why, but for some odd reason my layout goes nuts if I try to use the table tags,
    even used properly with no errors the whole thing just brakes down (I don't use tables
    anywhere). So I figured my only option is to attempt to do it CSS way if possible?....
  7. About Html
    (15)
    How long did it take you to learn Html?? It took me about 2months to learn the basics lmao. I need
    a tuturial that has it all or a website.i would like it if someone did it. Thats why i get my
    friends to help me /biggrin.gif" style="vertical-align:middle" emoid=":D" border="0"
    alt="biggrin.gif" /> But they are nice friends thats why. Like 2 people have helped me Sten and
    Habble Sten Owns www.habbofront.com which uses Asta as its host and www.habble-aus.com which uses
    Asta as its host. so this must be a good host because 2 good sites that have expert Htmlers so need
    he....
  8. Html Stats
    (3)
    Do you know how to get website stats in a html code?? Like The amount of people viewing the site at
    the moment and stuff like that?? because i need to know. Thanks if you reply to this i am in need
    for it. /tongue.gif" style="vertical-align:middle" emoid=":P" border="0" alt="tongue.gif" />....
  9. Stretching My Site Vertically
    Using CSS or HTML (6)
    I know it's possible, I've seen it one time. But I forgot. Many websites, if they hold more
    content than there is room for in the minimum height, the site stretches vertically. How can I do
    this? I only know that I need a background image of 1px height. Thanks in advance MediYama....
  10. Scripts And Html
    (13)
    Hey /smile.gif" style="vertical-align:middle" emoid=":)" border="0" alt="smile.gif" />, In the
    note pad, I put the proper code for php ?> and save the file as name.php But i can't put
    that file in html. This is a big problem since Iam trying to make an online text based game. Whats
    the code to put a script inside a web page. And do i need any special software for it? If so
    where can i download it? Thanks for reading /biggrin.gif" style="vertical-align:middle" emoid=":D"
    border="0" alt="biggrin.gif" />.....
  11. Firefox Inventing Its Own Html?
    (9)
    I am building a website for a client. I finally have the animations and the site content the way i
    want it. I updated the site via FTP, and IE displays it perfectly. Firefox however displays my "work
    in progress" animations still, even though the index file references the new animation. I have
    cleared cache, and even looked up the site on different computers, and on every one, FF displays
    those darn rough draft animations while IE works perfectly. Any idea as to what is going on here?....
  12. Quick Tips On Html And Css
    (11)
    Here are just some general tips, helpers and time-savers for HTML and CSS. HTML Ideally, you should
    be working under the XHTML 1.1 doctype specification. Some reasons: Improved semanticism - make use
    of the elements available appropriately to convey the information as it was intended. Improved
    understanding - because of an increase in semanticism, it's easier for your audience to
    understand what your trying to convey. Cleaner code - due to the deprecation of some elements and
    the strict requirements of nesting, closing and structure, your code becomes much cleane....
  13. Bulletproof HTML: 37 Steps To Perfect Markup
    Excellent article that highlights and answers most FAQ about HTML (4)
    Hi, i want to share with everybody this excellent article at sitepoint.com that i just read, it
    highlights and answers most FAQ about HTML, it's very consice and simply and for me it is a must
    to read. You can read it at Bulletproof HTML: 37 Steps to Perfect Markup . Best regards,....
  14. Home Videos
    html code for home video (4)
    I was wondering if anyone knows how to turn a home video that is saved on your computer to that of a
    html code so I can put it onto my myspace page... Please if anyone at all knows how to do this
    please please help me!!!!....
  15. A First Peep Into Html
    (5)
    Dear friends HTML is the building block of any web page. Without it no pages can be written though
    there are some exceptions. Even you got to have some knowledge of HTML to write dynamic web
    applications. An HTML file is a text file containing small markup tags The markup tags tell the Web
    browser how to display the page An HTML file must have an htm or html file extension An HTML file
    can be created using a simple text editor HTML is acronym of Hyper Text Markup Language. This time
    I will discuss about HTML tags. Dear friends HTML is the building block of any web pa....
  16. Where To Find A WML To HTML Converter ?
    (2)
    hello people, i need to convert few wml codings to html.. I have found plenty of converter that
    convert html to wap. But none of my use.. Please guide me.. Thanks in advance....
  17. HTML: Seems Like A Simple Problem, But I'm Baffled!
    (4)
    i got this one question...I have this page http://ebiztip.com/thankyou.html with an image of the
    book not coming out.....the image is named chapterm-big.jpg...but the image just want to hide....i
    swear there's nothing wrong with the html....or am I wrong???....
  18. Need Help With The HTML HR Tag
    (5)
    Hi, does anybody knows which is the equivalent tag in CSS of the HTML HR tag or how do i replace
    this. I need this because the HR tag is deprecated and i wanna validate a website. The code that i
    need to replace is this: QUOTE best regards,....
  19. HTML Editor
    (23)
    I am sick of using notepad to create my HTML pages and I want somthing better. Are there any
    programs available that are easier to use than notepad for html editing. If so i wolud like to know
    about them. Thanx....
  20. How Can You Spice Up Your Basic HTML Site ? Beginner Needs Help
    (9)
    Well im new to this,and i know a person who knows how to do HTML,I of course dont lol,but I was
    wondering with html can you change the way the sites you make on here look and ect..(put flash in
    and w/e..)....
  21. Get Input From Html/txt File?
    with just html/css and maybe javascript? (2)
    I was just wondering if it's possible to retrieve text (and maybe images) from a .html or .txt
    file. So for example you get the header and footer from an external file. Is it possible with just
    html/css and maybe a little javascript or does it require server side scripting like php???
    -=jeroen=-....
  22. Here Are Some Html Tutorial Sites
    (1)
    I think here is a very good HTML Tutorial : Rolling Eyes
    http://www.allfreetutorials.com/htmltutorials.htm Also very competent : Rolling Eyes
    http://www.yourhtmlsource.com/ Adequate one : Rolling Eyes http://htmldog.com/ Take a look and
    you'll get all answers about HTML, CSS and Java-scripting. Laughing....
  23. Where Can I Learn Html Codes ?
    html codes (8)
    does anyone know a good website with html codes?....
  24. Html Background Tutorial
    (2)
    Back grounds are very essential in html and if you dont know how you can make a background on your
    website then there is no use of creating one . First well start with the basics . Color Background
    : If you want to change your backgrounds color you put this code in the body of the page : CODE
    Where the ###### are you have to put a color code . Just put that in and save your page and
    thats done . Image Backgrounds : The code below takes an image and puts it on the background on
    the page : CODE Thats all but if you have any questions at all ab....
  25. Where Can I Learn Advanced Html ?
    (11)
    Well over a few years ive been picking up little bits of html and have slowly learnt quite a bit (to
    my own surprise) But im still quite new and havnt found any sites that help much with advanced
    html! /sad.gif' border='0' style='vertical-align:middle' alt='sad.gif' /> If anyone knows of
    sites that show mainly advanced html and maybe even a bit of java could they plaese post it im
    desperate CHEERS!! /biggrin.gif' border='0' style='vertical-align:middle' alt='biggrin.gif' /> ....
  26. Free Shoutbox? HTML, Flash or PHP Code
    (25)
    does anyone know where i can find a free shoubox thats customisable? it can be in html, php or flash
    format. thanks in advance paul....
  27. Force Object To Load Last
    html question (2)
    Alright html wizards...i've got a question ^_^ I assume that, like other programming codes, html
    and php compilers read a code from top to bottom. Say I have a object though...and I want it to load
    last...how do I do that? Let's just pretend I have an image that I do not want to load until
    everything else on the webpage is loaded...how can I set that up? Is there perhaps a javascript code
    for it...or maybe a CSS style I could add onto the object? Or better yet, is it possible to make
    everything within a div/span/table tag load last? Another thing...if I leave an....
  28. Html W/ Embedded Flash
    How do I get rid of borders?? (9)
    Hey if any of you HTML wizzes out there could help me - I would greatly appreciate it. I am
    designing some web site stuff with flash only. I know I know I should be using dreamweaver or
    something else in addition - which I don't have access to on my computer here at work. When I
    publish my files I can't get rid of the border around my swf file when I view it in a browser.
    Is there any way to get rid of this $#%$ed border?? I have tried all the options I can find in
    flash to no avail. I'm thinking there probably is some simple HTML code to get rid of the....
  29. Embedding XML into HTML
    (2)
    Hi, I am looking for a way to embed external rss/xml files into my html page, how/is this possible?....
  30. Basic Tips and Tricks in HTML
    (17)
    Here is some quick links for basic html coding... A quick and easy way to create your first web
    page! -> The easiest HTML guide for beginners You'll learn how to create tables from real
    examples. -> How to create TABLE? You will learn how to create frames from a real example.
    You'll see how to create a borderless frame, how to specify the target frame, etc. -> How to
    build FRAMES? Follow a few easy steps to add sound to your web pages. -> How to add sound to a
    web page? This page tells you how to automatically load a visitor to another web page.....

    1. Looking for indentation, html

See Also,

*SIMILAR VIDEOS*
Searching Video's for indentation, html
advertisement



Indentation In Html

Affordable Web Hosting, Low cost Web Hosting - ComputingHost.com