Speravo potessi essere in grado di aiutarti con un problema che mi sta facendo impazzire da alcune ore. Sto cercando di progettare una pagina per un motore di ricerca in grado di aggiungere un numero X di criteri e quindi eseguire una ricerca. Sto cercando di ottenere la casella dei criteri per ridimensionare in base al numero di criteri e alla risoluzione dello schermo. Voglio che venga caricato in una dimensione iniziale e quindi ridimensionato a seconda di cosa viene aggiunto, in modo che il pulsante di ricerca e i risultati di ricerca riportati di seguito si spostino verso il basso. In questo momento, posso farlo utilizzando un min-width:100%
, ma questo produce barre di scorrimento e il testo trabocca sulla destra della pagina perché sto usando un margin-left:340px;
per spostare questa casella a destra, in quanto vi è un'altra casella a sinistra di esso , searchList
.float CSS con larghezza e margine min.
La rimozione della larghezza min causa l'allontanamento delle barre di scorrimento, ma la casella non viene disegnata fino a quando non viene aggiunto un elemento. L'aggiunta di un elemento fa sì che venga disegnata una piccola scatola, e solo dopo aver aggiunto alcuni elementi l'intera casella va alla giusta dimensione. C'è un modo in cui posso spostare la scatola lateralmente e tenerla in linea con il resto della pagina, e qual è il modo migliore per raggiungere questo obiettivo?
È lo stesso sia su Chrome che su Firefox.
La casella di cui sto parlando è <div id="searchCriteria"></div>
. Il codice completo è sotto. Apprezzerei molto qualsiasi aiuto :)
<html>
<head>
<style type="text/css">
body {
padding:0px;
margin:0px;
}
#content {
min-width:950px;
}
#header {
height:130px;
background-color:blue;
}
#searchList {
width: 300px;
height: 400px;
background-color:green;
position:absolute;
}
#searchCriteria {
background-color:red;
float:left;
min-height:400px;
min-width: 100%;
margin-left: 340px;
}
#searchResults {
background-color:purple;
height: 800px;
width: 100%;
float:left;
}
.criteria {
border: 1px solid black;
padding: 10px;
margin: 10px;
float: left;
width: 400px;
}
#buttonAndStatus {
float:left;
background-color:pink;
width:100%;
text-align:center;
}
</style>
<script type="text/javascript">
function add(){
$("#searchCriteria").append("<p class=\"criteria\">This is a bit of search criteria.</p>");
}
</script>
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.9.1/jquery-ui.min.js"></script>
</head>
<body>
<div id="header">fasdfasdfasdf asdf asdf asdf asdf asdf asdf </div>
<div id="content">
<div id="searchList">
<input type="button" name="button" Value="Click me" onClick="add()">
</div>
<div id="searchCriteria"></div>
<div id="buttonAndStatus"><input type="button" name="button" Value="Search "></div>
<div id="searchResults">asdf asdf asdf asdf </div>
</div>
</body>
</html>
fare un jsFiddle fuori da questo, che descrive in modo chiaro il problema, in modo da poter verificare il lavoro svolto e cercare di trovare una soluzione di – jakee
Certo: http: // jsfiddle. net/tPHzX/ – Provster