www.webdeveloper.com
Results 1 to 7 of 7

Thread: CSS Floated List Form

  1. #1
    Join Date
    Aug 2006
    Posts
    49

    CSS Floated List Form

    I have been having a css problem that has bugged me for a while.

    When I create a form in a list with each input in the li it looks like example 1 in the link below. When I add validation to this, due to one li being higher than the other it breaks the layout (example 2).

    http://i42.tinypic.com/20ro9dc.gif

    I know a way to fix this is to set the height, but I need it to be scalable as the form gets quite complex. Is there anyway of stopping this list breaking in this way?

    Thanks

  2. #2
    Join Date
    Apr 2003
    Location
    Netherlands
    Posts
    21,654
    The error text should be positioned absolute to a relative parent element.
    This is with a mouseover, but the principle is the same:
    Code:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
    <html lang="en">
    <head>
    <title></title>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    
    <script type="text/javascript">
    function showHide(obj) {
    var span=obj.parentNode.lastChild;
    span.className=(span.className=='error')? 'show' : 'error';
    }
    
    window.onload=function() {
    var aInput=document.getElementsByTagName('input');
    for(var i=0; i<aInput.length; i++) {
        aInput[i].onmouseover=aInput[i].onmouseout=function() {showHide(this);};
        }
    };
    </script>
    
    <style type="text/css">
    label {position:relative; display:block; margin:1em 0;}
    .error {display:none;}
    .show {position:absolute; z-index:999; display:block; background:#eee; color:#f00; font-style:italic;}
    </style>
    
    </head>
    <body>
    <form action="#" name="form1">
    <div>
    <label>Your name:<input type="text"><span class="error">Please enter your name</span></label>
    <label>Your code:<input type="text"><span class="error">Please enter your code</span></label>
    </div>
    </form>
    </body>
    </html>

  3. #3
    Join Date
    Aug 2006
    Posts
    49
    Hi,

    I have not built them like above, which I know may fix it. I am really wondering how to fix the issue when the form inputs are contained in li items and floated left and the heights change.

    Code below:

    Code:
    <ol>
    	<li class="first">
    		<label for="message">Your personal message:</label>
    		<textarea name="message" id="message" rows="5" cols="55"></textarea>
    	</li>
    
    	<li>
    		<label for="name">Your name:</label>
    		<input type="text" name="name" id="name" class="field" />
    	</li>
    
    	<li>
    		<label for="phone">Mobile phone number:</label>
    		<input type="text" name="phone" id="phone" class="field" />
    	</li>
    
    	<li>
    		<label for="email">Your email:</label>
    		<input type="text" name="email" id="email" class="field" />
    	</li>
    
    	<li>
    		<label for="code">Your code:</label>
    		<input type="text" name="code" id="code" class="field" />
    	</li>
    
    	<li class="checkRadio">
    		<input type="checkbox" name="more" id="more" value="1" />
    		<label for="more"> Tell me more about promotions by email.</label>
    	</li>
    
    	<li>
    		<p><strong>Don&rsquo;t have a code?</strong></p>
    	</li>	
    </ol>
    I am using jQuery validate which causes the errors to appear in a list item also below the originals.

    Its just an issue that I want to fix that doesn't just apply to this example that's all

    Anyone?
    Last edited by Disfunctional; 02-26-2009 at 07:05 AM. Reason: Code added

  4. #4
    Join Date
    Apr 2005
    Location
    Behind my DiGiCo SD7 Console
    Posts
    900
    Is there a way to have the label on the same line as the textbox?

    Like this?
    http://www.djentertainmentsolutions.com/contact2.php

  5. #5
    Join Date
    Apr 2003
    Location
    Netherlands
    Posts
    21,654
    Is there a way to have the label on the same line as the textbox?
    That is what the document in #2 does

  6. #6
    Join Date
    Apr 2005
    Location
    Behind my DiGiCo SD7 Console
    Posts
    900
    I'm sorry! I added the CSS from the original example.

    Is there a way for me to add a header with the red background with the link I provided?

    Is there a way to make the labels and text boxes aligned in my example?

  7. #7
    Join Date
    Apr 2003
    Location
    Netherlands
    Posts
    21,654
    Give an image example of the required layout.

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
HTML5 Development Center



Recent Articles