css 两边自适应 中间固定宽度居中
时间: 2023-09-02 22:08:44 浏览: 164
这个问题中的需求是实现一个宽度固定,两侧自适应的布局。可以使用Flexbox布局或者CSS Grid布局来实现。具体实现方法如下:
使用Flexbox布局:
```
<div class="container">
<div class="left"></div>
<div class="center"></div>
<div class="right"></div>
</div>
.container {
display: flex;
}
.left, .right {
flex: 1;
}
.center {
width: 960px;
margin: 0 auto;
}
```
使用CSS Grid布局:
```
<div class="container">
<div class="left"></div>
<div class="center"></div>
<div class="right"></div>
</div>
.container {
display: grid;
grid-template-columns: 1fr auto 1fr;
}
.center {
width: 960px;
justify-self: center;
}
```
相关问题
在html中如何使div里面的内容放在两边div的中间
要在HTML中将一个`<div>`内容放在两个等宽`<div>`之间的中心位置,你可以使用CSS的Flexbox布局。首先,给包含这三个`<div>`的容器设置display属性为`flex`,然后给内部的`<div>`一些特定的样式。这里是一个例子:
```html
<!DOCTYPE html>
<html lang="zh">
<head>
<style>
.container {
display: flex;
justify-content: center; /* 中心对齐 */
align-items: center; /* 内部元素垂直居中 */
}
.side-div {
width: 50%; /* 或者自适应宽度,如:width: calc(50% - 20px); 保证两边都有20px间隔 */
box-sizing: border-box; /* 确保内边距和边框不会影响元素的实际宽度 */
}
</style>
</head>
<body>
<div class="container">
<div class="side-div">这是左边的div</div>
<div class="content-div">这里是需要居中的<div></div>内容</div>
<div class="side-div">这是右边的div</div>
</div>
</body>
</html>
```
在这个例子中,`.content-div`会水平居中在两个`.side-div`之间。如果你有特殊需求,比如内容超过`side-div`的宽度,记得调整`.content-div`的样式。
HTML中 用CSS样式实现 文字两边添加水平线 并且可以适配
可以使用CSS中的伪元素来实现文字两边添加水平线的效果,并且使用百分比来适配不同尺寸的屏幕。
例如,以下代码可以实现这样的效果:
```html
<p class="text-with-lines">这是一段文字</p>
```
```css
.text-with-lines {
position: relative;
display: inline-block;
padding: 0 10%;
font-size: 20px;
}
.text-with-lines::before,
.text-with-lines::after {
content: "";
position: absolute;
top: 50%;
width: 40%;
height: 1px;
background-color: black;
}
.text-with-lines::before {
left: 0;
transform: translateY(-50%);
}
.text-with-lines::after {
right: 0;
transform: translateY(-50%);
}
```
解释一下上述代码:
- 首先,给包含文字的元素设置一个相对定位(position: relative)和内边距(padding),以便给伪元素留出空间。
- 接着,使用伪元素(::before和::after)分别在文字的左右两侧添加一个水平线。设置宽度为40%,高度为1px,颜色为黑色,并且使用绝对定位(position: absolute)和偏移量(left、right、top,这里使用了百分比)将它们放在文字的左右两侧,同时使用transform将它们垂直居中(translateY(-50%))。
- 最后,为了让水平线能够自适应不同尺寸的屏幕,设置包含文字的元素的内边距为百分比(padding: 0 10%),而不是固定像素值。
这样就可以实现文字两边添加水平线并且可以适配不同尺寸的屏幕的效果。
阅读全文