Runde Ecken ohne Bilder

Status
Nicht offen für weitere Antworten.

aleks

Mitglied
Hallo Zusammen,
habe mich etwas mit den Runden Ecken der Seite
http://www.webreference.com/programming/css_borders/2.html
beschäftigt und habe versucht es in meine Seite einzubinden. Ist mir auch eigentlich gelungen.
Nur nimmt dieser Farbhintergrund fast die geamte Breite des Bildschirms ein. So wenn versuche es kleiner zu machen, so ist unten und oben ein strich der trotzdem die ganze Bilschirmbreite einnimmt. Ich habe dort drei DiV-Tags die einander sind: also <div><div<div></div></div</div>

Hier mein CSS-Code:
HTML:
******************************************************************************************************************************
/*KLASSEN für die runden ecken */
*******************************************************************************************************************************

.raised {
  background:transparent; 
  width:400px;
  }
.raised h1, .raised p {
  margin:0 10px;
  }
.raised h1 {
  font-size:2em; 
  color:#fff;
  }
.raised p {
  padding-bottom:0.5em;
  }
.raised .b1, .raised .b2, .raised .b3, .raised .b4, .raised .b1b, .raised .b2b, .raised .b3b, .raised .b4b {
  display:block; 
  overflow:hidden;
  font-size:1px;
  }
.raised .b1, .raised .b2, .raised .b3, .raised .b1b, .raised .b2b, .raised .b3b {
  height:1px;
  }
.raised .b2 {
  background:#ccc; 
  border-left:1px solid #fff; 
  border-right:1px solid #eee;
  }
.raised .b3 {
  background:#ccc; 
  border-left:1px solid #fff; 
  border-right:1px solid #ddd;
  }
.raised .b4 {
  background:#ccc; 
  border-left:1px solid #fff; 
  border-right:1px solid #aaa;
  }
.raised .b4b {
  background:#ccc; 
  border-left:1px solid #eee; 
  border-right:1px solid #999;
  }
.raised .b3b {
  background:#ccc; 
  border-left:1px solid #ddd; 
  border-right:1px solid #999;
  }
.raised .b2b {
  background:#ccc; 
  border-left:1px solid #aaa; 
  border-right:1px solid #999;
  }
.raised .b1 {
  margin:0 5px; 
  background:#fff;
  }
.raised .b2, .raised .b2b {
  margin:0 3px; 
  border-width:0 2px;
  }
.raised .b3, .raised .b3b {
  margin:0 2px;
  }
.raised .b4, .raised .b4b {
  height:2px; margin:0 1px;
  }
.raised .b1b {
  margin:0 5px; background:#999;
  }
.raised .boxcontent {
  display:block;  
  background:#ccc; 
  border-left:1px solid #fff; 
  border-right:1px solid #999;
 width:600px;
  }
***********************************************************************************************************************************
/*Allgemeine Klasen */
***********************************************************************************************************************************
body, p a {
    color: black; background-color: white;
    font-size: 100.01%;
    font-family: Helvetica,Arial,sans-serif;
   padding: 1em;
    min-width: 41em; /* Mindestbreite verhindert Umbruch und Anzeigefehler in modernen Browsern */

  }

  h1 {
    font-size: 1.5em;
    margin: 0 0 0.7em; padding: 0.3em;
    text-align: center;
    background-color: #fed;
    border: 2px ridge silver;
  }
  html>body h1 {
    border-color: gray;  /* Farbangleichung an den Internet Explorer  */
  }


div.inhalt input,select
{
 display:inline;
 position:absolute; left:300px;
 width:10.5em;
}

div.inhalt label
{ 
 padding-left:10px;
 display:block;
}

  div.inhalt
{   
    
     width:400px;
    margin: 0 8em 0 2em;
    padding: 0 1em;
 /*   border: 1px dashed silver; */

  }
  * html div.inhalt {
    height: 1em;  /* Workaround gegen den 3-Pixel-Bug des Internet Explorers */
  }
  div.inhalt h2 {
    font-size: 1.2em;
    margin: 0.2em 0;
  }
  div.inhalt p {
   
 
font-size: 10pt;
 margin-top:0;
 padding-bottom:1em;
 padding-right:1em;
  }
.textfeld{
          position:absolute;left:250px;
         }
.tag     {
	  position:absolute;left:150px;
         }
.inhalt.tag  {
         	 width:5.5em;
               
             }
.monat   	
         {
          position:absolute;left:195px;
               
         }
.inhalt.monat
	     {
		width:5.5em;
	     }
.jahr    {
         	position:absolute;left:240px;
              
         }
.inhalt.jahr
	    {
		width:5.5em;
	    }
.inhalt.textfeld2
	{
	  width:2em;
	}
.textfeld2
	   {
	   position:absolute;left:190px;
	   }
.text
	   {
             position:absolute;left:230px;
	   }
.inhalt.text
	     {
	      width:20em;
             }
.checkbox {
	    position:absolute;left:-3px;
	   }
.inhalt.checkbox
		{
		 width:1em;
		}
.text2 {
	position:relative;left:140px;top:-5px;  font-size:10pt;
       }
.inhalt.text2
		{
		 width:20em;display:block;

		}
#button
	{
		margin-left:30em;
	}
Also wie kann ich das Farbsegment kleiner machen ohne, daß er mir oben und unten ausbricht?
Kann mir vielleicht Jemand einen rat geben? Sitz seit Stunden vor diesem Problem und kommt nicht weiter:rolleyes:

Gruß Aleks
 
Gibt es eine Online-Version der Problemseite oder könntest du bitte auch den dazugehörigen HTML-Quelltext posten?
 
Danke erst mal für die Antwort.
Ne z.Z. nicht. So der HTML-Code sieht so aus:
HTML:
<?
echo "Hallo";
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1"/>
<title>Dreispaltiges Layout mit Kopf- und Fu&szlig;zeile</title>

<link rel="stylesheet" href='css/formular_box.css' type="text/css" type='text/opera;charset=utf-8'>
</head>
<body>

<h1>CSS-basierte Layouts</h1>






  

 <form>
<div class="raised"><b class="b1"></b><b class="b2"></b><b class="b3"></b><b class="b4"></b>
<div class="boxcontent">
<div class="inhalt">
<p ><label for="login">Login</label><input type="text" name="login" value="" ></p>
<p><label for="pass1">Passwort</label><input type="text" name="pass1" value="" ></p>
<p><label for="pass2">Passwort best&auml;tigen</label><input type="text" name="pass2" value="" ></p>
<p><label for="vorname">Vorname</label><input type="text" name="vorname" value="" ></p>
<p><label for="nachname">Nachname</label><input type="text" name="nachname" value="" ></p>
<p><label for="geschlecht">Geschlecht</label><select name="geschlecht">
  <?php
  print("<option value=maennlich>m&auml;nnlich</option>\n");
  print("<option value=weiblich>weiblich</option>\n");
  ?>
  </select></p>
<p><label for="geburtsdatum">Geburtsdatum </label><span class="tag"><select name="tag"  class="tag inhalt">
<?php
	
    echo'<option value ="'.$_POST['tag'].'"selected>Tag</option> ';
    for( $i=1; $i<=31; $i++ ) {
    if($_POST['tag'] == $i) {
            echo '<option value="'.$i.'" selected>'.$i.'</option>';
    }
      else {
            echo '<option value="'.$i.'">'.$i.'</option>';
    }
    }
?>
</select></span><span class="monat">


<select name="monat" class="monat inhalt">
<?php
    echo'<option value="'.$_POST['monat'].'"selected>Monat</option> ';
	for( $i=1; $i<=12; $i++ ) {
    if($_POST['monat'] == $i) {
            echo '<option value="'.$i.'" selected>'.$i.'</option>';
    }
    else {
            echo '<option value="'.$i.'">'.$i.'</option>';
    }
    }
?>
</select> </span><span class="jahr">



<select name="jahr" class="jahr inhalt">
<?php
    echo'<option value="'.$_POST['jahr'].'"selected>Jahr</option> ';
	$aktuellesJahr = date('Y');
    for($i=($aktuellesJahr - 100); $i<=$aktuellesJahr; $i++ ) {
    if($_POST['jahr'] == $i) {
            echo '<option value="'.$i.'" selected>'.$i.'</option>';
    }
    else {
            echo '<option value="'.$i.'">'.$i.'</option>';
    }
    }
?>
</select> </span>   </p>
<p><label for="strasse">Strasse</label><input type="text" name="strasse" value="" ><span class="text inalt"><label for="nr" class="text" >Nr.</label></span><span class="textfeld2 "><input type="text" name="nr" value="" class="textfeld2 inhalt"  size="5" maxlength="5"></span></p>
<p><label for="land">Land</label><input type="text" name="land" value="" ></p>
<p><label for="plz">PLZ</label><input type="text" name="plz" value="" ></p>
<p><label for="ort">Ort</label><input type="text" name="ort" value="" ></p>
<p><label for="email">E-Mail</label><input type="text" name="email" value="" ></p>
<p><label for="nutzbedingungen">Nutzbedingungen</label><span class="checkbox"><input type="checkbox" name="nutzbedingungen" value="checkbox" class="inhalt checkbox"></span><div class="text2"><label class="inhalt text2" for="text1">Ich habe die <a href="bedingungen.html">Nutzungsbedinugungen</a> gelesen und best&auml;tige sie.</label></div></p>
<p><label for="agbs">AGB's</label><span class="checkbox"><input  class="inhalt checkbox" type="checkbox" name="agbs" value="checkbox" ></span><div class="text2"><label class="text2 inhalt " for="text2">*Ich habe die <a href="agbs.html">AGBs</a> gelesen und erkl&auml;re mich damit einverstanden.</label></div></p>


</div>
</div>
<b class="b4b"></b><b class="b3b"></b><b class="b2b"></b><b class="b1b"></b>
</div>

<p>
  <input type="hidden" name="ueberpruefung" value="1">
  <input type="submit" name="Anmeldung" value="Weiter" id="button"></p></form>

<p class="fusszeile">Diese Fu&szlig;zeile stellt &uuml;ber die CSS-Eigenschaft 'clear'
   den Elementenfluss wieder her.</p>



</body>
</html>
Gruß Aleks
 
Erweitere den CSS-Code mal mit folgender Regel:

CSS:
form {
width: 600px;
}
 
Also erst einmal danke für die Antworten;)
Bloß so richtig bringt mich das nicht weiter. Es Grund ist einfach ich kenne mich mit JavaScript nicht aus. Und hab jetzt keine Lust mich einzuarbeiten. Ich hab meinen Quellcode angepaßt. So es ist kleiner geworden, aber er macht mir nur die linken Ecken richtig. Hier ist dew Teil des Quellcodes den ich geändert habe:
HTML:
.inset {background: transparent; width:65%;}

.inset h1, .inset p {margin:0 10px;width:65%}

.inset h1 {font-size:2em; color:#fff;width:65%}

.inset p {padding-bottom:0.5em;width:65%}

 

.inset .b1, .inset .b2, .inset .b3, .inset .b4, .inset .b1b, .inset .b2b, .inset .b3b, .inset .b4b {display:block; overflow:hidden; font-size:1px;}

.inset .b1, .inset .b2, .inset .b3, .inset .b1b, .inset .b2b, .inset .b3b {height:1px;}


.inset .b2 {background:#ccc; border-left:1px solid #999; border-right:1px solid #aaa;}

.inset .b3 {background:#ccc; border-left:1px solid #999; border-right:1px solid #ddd;}

.inset .b4 {background:#ccc; border-left:1px solid #999; border-right:1px solid #eee;}

.inset .b4b {background:#ccc; border-left:1px solid #aaa; border-right:1px solid #fff;}

.inset .b3b {background:#ccc; border-left:1px solid #ddd; border-right:1px solid #fff;}

.inset .b2b {background:#ccc; border-left:1px solid #eee; border-right:1px solid #fff;}

 

 

.inset .b1 {margin:0 5px; background:#999;width:65%;}

.inset .b2, .inset .b2b {margin:0 3px; border-width:0 2px;width:65%;}

.inset .b3, .inset .b3b {margin:0 2px;width:65%;}

.inset .b4, .inset .b4b {height:2px; margin:0 1px;width:65%;}

.inset .b1b {margin:0 5px; background:#fff;width:65%;}

 

.inset .box {display:block; background:#ccc; border-left:1px solid #999; border-right:1px solid #fff; width:65%;}
Also hat Jemand einen Tipp wie ich den die rechten Ecken hinbekomme? Jetzt sind das gegenteil runder Ecken.
Danke schon mal für die Hilfe.
Gruß Aleks
 
  • Du mußt dich nicht in Javascript einarbeiten, denn hierbei handelt es sich um CSS ;)

  • Mein Lösungsvorschlag bedarf einer kleinen Korrektur, da die Box einen linken und rechten Rahmen besitzt, der zu der Breitenangabe des Formulars hinzuaddiert werden muß, damit die rechten Ecken rund ausgebildet werden:
CSS:
form {
width: 602px;
}
  • Browsercheck: FF 1.5, IE 6.0, MOZ 1.7, NN 7.0, OP 8.50 | Win2000
 
Ne tut mir leid michaelsinterface, wenn Deinen Code bei mir einfüge ändert sicht nichts.:( Was nun?
Gruß
Aleks
 
Hast du schon die „Nifty Corners“ ausprobiert? Die würden die ganze Fummelei wesentlich vereinfachen.
 
Status
Nicht offen für weitere Antworten.
Zurück