Я создал панель, как показано на скриншотах ниже. моя панель будет иметь заголовок заголовка и различные значки, которые выполняют различные операции. оба заголовка заголовка и значки являются необязательными или, другими словами, один из них не будет доступен во многих случаях.Выравнивание элементов на основе доступности заголовков в CSS
- всякий раз, когда у меня есть заголовок, я хочу, чтобы все мои значки были на правой стороне заголовка панели, который отлично работает, как в первом скриншоте с CSS, который я написал.
- , когда у меня нет названия, я хочу, чтобы все мои значки были на крайней левой стороне заголовка панели, как показано на втором скриншоте, с которым я сталкиваюсь с трудностями.
SCREENSHOTS
HTML
<div class="panel">
<div class="panel-header ">Title Goes Here
<div class="toolbar-button-group">
<button class="toolbar-button-stroke icon-add"></button>
<button class="toolbar-button-stroke icon-hide"></button>
<button class="toolbar-button-stroke icon-edit"></button>
<button class="toolbar-button-stroke icon-options"></button>
</div>
</div>
<div class="panel-content "></div>
</div>
CSS
.panel {
box-shadow: 0 3px 12px rgba(0, 0, 0, 0.23), 0 3px 12px rgba(0, 0, 0, 0.16);
background: #fff;
width: 100%;
height: 100%;
}
.panel-header {
color: #354052;
text-transform: capitalize;
font-size: 20px;
height: 40px;
line-height: 40px;
margin: 0;
padding-left: 24px;
border-bottom: 2px #BBBBBB solid;
}
.panel-content {
padding: 24px;
background: white;
}
.toolbar-button-stroke{
background:white;
border: none;
border-radius: 4px;
padding: 6px;
margin: 0px 3px;
color:black;
font-size: 15px;
text-transform: uppercase;
cursor:pointer;
outline: none;
}
.toolbar-button-group{
float: right;
}
Я предпочитаю решения CSS без позиционирования. Fiddle ссылка here
Заранее спасибо
В вместо скриншотов, вы также можете показать код в скрипке? –
Просто взглянув на код выше, я вижу, что у вас есть поля, которые не позволяют размещать значки на крайнем левом углу. Почему бы не использовать javascript, чтобы скрыть сам элемент, когда нет названия? –
Если вы не хотите использовать javascript-решение, постарайтесь не устанавливать заголовок с полями или границами справа налево, вместо этого используйте свойство text-indent' css. –