web-dev-qa-db-fra.com

Comment étendre la largeur de textarea à 100% du parent (ou comment étendre un élément HTML à 100% de la largeur du parent)?

Comment étendre la largeur de textarea à 100% du parent?

J'essaie la largeur à 100%, mais cela ne fonctionne pas, il se développe à 100% de la page en cas d'accident.

Voici la question de manière visuelle .enter image description here

S'il vous plaît fournir des conseils.

49
Chameleon

<div>
<div style="width:20%; float:left;">
 <p>Some Contentsssssssssss</p>
</div>
<div style="float:left;width:80%;">
 <textarea style="width:100%;"></textarea>
</div>
<div style="clear:both;"></div>
</div>
 

49
Gangadhar

Vous devez définir width de la div contenant textarea et lorsque vous déclarez textarea, vous pouvez ensuite définir .main > textarea pour que width: inherit.

Remarque: .main > textarea signifie un <textarea> à l'intérieur d'un élément avec class="main".

Voici la solution de travail

Le HTML:

<div class="wrapper">
  <div class="left">left</div>
  <div class="main">
    <textarea name="" cols="" rows=""></textarea>
  </div>
</div>

Le CSS:

.wrapper {
  display: table;
  width: 100%;
}

.left {
  width: 20%;
  background: #cccccc;
  display: table-cell;
}

.main {
  width: 80%;
  background: gray;
  display: inline;
}

.main > textarea {
  width: inherit;
}
7
Nitesh

Le modèle box est quelque chose que tout développeur Web devrait connaître. travailler avec des pourcentages pour les tailles et des pixels pour le remplissage/la marge ne fonctionne tout simplement pas. Il y a toujours une résolution à laquelle elle n'a pas l'air bonne (par exemple, donner une largeur de 90% et un remplissage/marge de 10px dans une div de moins de 100px).

Vérifiez ceci (en utilisant le code de micro.pravi): http://jsbin.com/umeduh/2

<div id="container">
    <div class="left">
        <div class="content">
            left
        </div>
    </div>
    <div class="right">
        <div class="content">
            right
            <textarea>Check me out!</textarea>
        </div>
    </div>
</div>

Le <div class="content"> existe afin que vous puissiez utiliser le rembourrage et la marge sans visser les flotteurs.

c'est la partie la plus importante du CSS:

textarea {
    display: block;
    width: 100%;
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
            box-sizing: border-box;
}
6
Broxzier

HTML:

<div id="left"></div>
<div id="content">
        <textarea cols="2" rows="10" id="rules"></textarea>
</div>

CSS:

body{
    width:100%;
    border:1px solid black;
    border-radius:5px;

}
#left{
    width:20%;
height:400px;
    float:left;
    border: 1px solid black;
    display:block;
}
#content{
    width:78%;
    height:400px;
    float:left;
    border:1px solid black;
    text-align:center;
}
textarea
{
   margin-top:100px;
    width:98%;
}

DEMO: ICI

1
Aravind30790

Je ferais quelque chose comme ça:

HTML:

<div class="wrapper">
    <div class="side">sidebar here</div>
    <div class="main">
        <textarea class="taclass"></textarea>
    </div>
</div><!--/ wrapper -->

CSS:

.wrapper{
    display: block;
    width: 100%;
    overflow: hidden;
}
.side{
    float:left;
    width:20%;
}
.main{
    float:right;
    width:80%;
}
.taclass{
    display:block;
    width:100%;
    padding:2%;
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
            box-sizing: border-box;
}
1
Qiqi Abaziz

Essayez ceci..Ajoutez ceci dans votre page

<style>
textarea
{
width:100%;
}
</style>
0
Ganesh Rengarajan

Ajouter le css

  <style type="text/css">
    textarea
    {

        border:1px solid #999999
        width:99%;
        margin:5px 0;
        padding:1%;
    }
</style>
0
newuser