#html #css #google-chrome
Вопрос:
Я почти закончил со своей страницей, когда мой flexbox внезапно перестал работать. Я пытаюсь использовать его с основным направлением, идущим сверху вниз, и я хотел бы использовать опцию обоснования содержимого: «пространство вокруг». Я проверил наличие ошибок в своем HTML с помощью валидатора, а затем попытался перенести свой код на пример на w3s, чтобы увидеть, когда что-то в моем коде нарушит пример, но этот момент так и не наступил.
html {
font-family: "Archivo", "Arial";
background-color: #223333;
color: #eeeeee;
}
* {
font-family: "Archivo", "Arial";
}
.container {
display: flex;
flex-direction: column;
justify-content: space-around;
align-items: center;
}
.paneel {
/*outline: 2px solid red;*/
margin: 20px;
border-radius: 20px;
border: 2px solid orange;
}
h1 {
font-family: "Archivo", "Arial";
font-size: 8vw;
text-align: center;
}
button {
padding: 10px;
border-radius: 10px;
border: 2px solid orange;
background-color: #223333;
color: white;
font-family: "Archivo", "Arial ";
font-size: 2.5vw;
}
input {
padding: 10px;
border-radius: 10px;
border: 2px solid orange;
background-color: #223333;
color: white;
font-family: "Archivo", "Arial ";
font-size: 2.5vw;
}
label {
padding: 10px;
background-color: #223333;
color: white;
font-family: "Archivo", "Arial ";
font-size: 2.5vw;
}
.column {
flex-grow: 1;
}
p {
font-family: verdana;
font-size: 20px;
}
#paneelConf {
height: 300px;
}
#paneelActie {
height: 200px;
}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<script defer src="script.js"></script>
<link rel="stylesheet" type="text/css" href="style.css" />
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Archivo" />
<title>BLE for Js</title>
</head>
<body>
<header>
<h1>BLE for Js</h1>
</header>
<div id="paneelConf" class="paneel">
<div class="container">
<div>
<label id="lblService">Service UUID: </label>
<input id="iptService" />
</div>
<div>
<label id="lblCharacteristic">Characteristic UUID: </label>
<input id="iptCharacteristic" />
</div>
<div>
<button type="button" id="btnBLE">Connect to the BLE pheripheral</button>
</div>
</div>
</div>
<div id="paneelActie" class="paneel">
<div class="container">
<div>
<button type="button" id="btnRead">Read delay</button>
<label id="lblRes"></label>
</div>
<div>
<button type="button" id="btnWrite">Write delay</button>
<input id="iptWaarde" type="number" value="50" />
</div>
</div>
</div>
</body>
</html>
Ответ №1:
Визуально вы не видите, что правило justify-content: space-around
работает из-за отсутствия высоты селектора .container
. Добавьте правило высоты height: 100%
или height: inherit
для этого селектора .container
.
html {
font-family: "Archivo", "Arial";
background-color: #223333;
color: #eeeeee;
}
* {
font-family: "Archivo", "Arial";
}
.container {
display: flex;
flex-direction: column;
justify-content: space-around;
align-items: center;
height: 100%;
}
.paneel {
/*outline: 2px solid red;*/
margin: 20px;
border-radius: 20px;
border: 2px solid orange;
}
h1 {
font-family: "Archivo", "Arial";
font-size: 8vw;
text-align: center;
}
button {
padding: 10px;
border-radius: 10px;
border: 2px solid orange;
background-color: #223333;
color: white;
font-family: "Archivo", "Arial ";
font-size: 2.5vw;
}
input {
padding: 10px;
border-radius: 10px;
border: 2px solid orange;
background-color: #223333;
color: white;
font-family: "Archivo", "Arial ";
font-size: 2.5vw;
}
label {
padding: 10px;
background-color: #223333;
color: white;
font-family: "Archivo", "Arial ";
font-size: 2.5vw;
}
.column {
flex-grow: 1;
}
p {
font-family: verdana;
font-size: 20px;
}
#paneelConf {
height: 300px;
}
#paneelActie {
height: 200px;
}
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Archivo" />
<body>
<header>
<h1>BLE for Js</h1>
</header>
<div id="paneelConf" class="paneel">
<div class="container">
<div>
<label id="lblService">Service UUID: </label>
<input id="iptService" />
</div>
<div>
<label id="lblCharacteristic">Characteristic UUID: </label>
<input id="iptCharacteristic" />
</div>
<div>
<button type="button" id="btnBLE">Connect to the BLE pheripheral</button>
</div>
</div>
</div>
<div id="paneelActie" class="paneel">
<div class="container">
<div>
<button type="button" id="btnRead">Read delay</button>
<label id="lblRes"></label>
</div>
<div>
<button type="button" id="btnWrite">Write delay</button>
<input id="iptWaarde" type="number" value="50" />
</div>
</div>
</div>
</body>
Комментарии:
1. Спасибо, что решили эту проблему. Я все еще немного не уверен, почему это работало раньше или почему так много страниц, подобных этой developer.mozilla.org/en-US/docs/Web/CSS/… не используйте ширину: 100%. Это потому, что они задают высоту/ширину коробки с помощью px или что-то в этом роде?
2. @ZwarteKop, вы изменили структуру html до того, как она заработала?
3. @ZwarteKop, посмотри, пожалуйста — i.ibb.co/dDFtg5c/image.png .
4. Нет, мне нужно было только изменить css. Я просто добавил строку «высота: 100%;» в класс контейнера, как и вы.