gpt4 book ai didi

html - 如何使用 CSS 使页脚元素的宽度相同

转载 作者:太空宇宙 更新时间:2023-11-04 06:02:01 24 4
gpt4 key购买 nike

我的元素有一个页脚,其中有两张图片……每一张都贴在一个特定的 Angular 落。左下角是Division标志(system_footer_left);而右下角是品牌标志(system_footer_right)。我想做的是让部分的大小与宽度相同,即使图像的宽度不一样。

我怎样才能做到这一点?

在我目前的元素设计中,左边的标志大约是右边标志宽度的一半。

我对 CSS 生疏了,我无法在网上找到任何答案。我不想将宽度设置为固定百分比,因为我希望它是动态的,这样如果我们更改品牌 Assets ( Logo ),它就会“即插即用”。

#system_footer {
padding: 5 5 0 5;
position: fixed;
left: 0;
bottom: 0;
width: 100%;
background-color: rgba(5, 51, 107, .75);
text-align: center;
margin: auto;
}

#system_footer_center {
padding: 10px;
bottom: 0;
background-color: transparent;
color: #FFD700;
text-align: center;
font-size: 12px;
font-weight: 500;
margin: auto;
word-wrap: break-word;
text-shadow: 2px 2px 2px #FF8C00;
}

#system_footer_right {
background: rgb(170, 213, 255);
background: -webkit-linear-gradient(rgba(170, 213, 255, 0.5) 8%, rgba(5, 51, 107, 1) 29%, rgba(5, 51, 107, 0.6362920168067228) 67%, rgba(170, 213, 255, 1) 100%, rgba(5, 51, 107, 1) 100%);
background: -o-linear-gradient(rgba(170, 213, 255, 0.5) 8%, rgba(5, 51, 107, 1) 29%, rgba(5, 51, 107, 0.6362920168067228) 67%, rgba(170, 213, 255, 1) 100%, rgba(5, 51, 107, 1) 100%);
background: linear-gradient(rgba(170, 213, 255, 0.5) 8%, rgba(5, 51, 107, 1) 29%, rgba(5, 51, 107, 0.6362920168067228) 67%, rgba(170, 213, 255, 1) 100%, rgba(5, 51, 107, 1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#aad5ff", endColorstr="#05336b", GradientType=1);
padding: 14px;
float: right;
max-width: 30%;
text-align: right;
border: 3px outset rgba(208, 207, 204, .5);
-moz-border-radius: 10px 10px 10px 10px;
-webkit-border-radius: 10px 10px 10px 10px;
border-radius: 10px 10px 10px 10px;
-webkit-box-shadow: -1px -0px 1px 1px rgba(255, 255, 255, 0.75);
-moz-box-shadow: -1px -0px 1px 1px rgba(255, 255, 255, 0.75);
box-shadow: -1px -0px 1px 1px rgba(255, 255, 255, 0.75);
}

#system_footer_right:hover {
background: rgb(170, 213, 255);
background: -webkit-linear-gradient(rgba(170, 213, 255, 0.5) 8%, rgba(5, 51, 107, 1) 29%, rgba(5, 51, 107, 0.6362920168067228) 67%, rgba(170, 213, 255, 1) 100%, rgba(5, 51, 107, 1) 100%);
background: -o-linear-gradient(rgba(170, 213, 255, 0.5) 8%, rgba(5, 51, 107, 1) 29%, rgba(5, 51, 107, 0.6362920168067228) 67%, rgba(170, 213, 255, 1) 100%, rgba(5, 51, 107, 1) 100%);
background: linear-gradient(rgba(170, 213, 255, 0.5) 8%, rgba(5, 51, 107, 1) 29%, rgba(5, 51, 107, 0.6362920168067228) 67%, rgba(170, 213, 255, 1) 100%, rgba(5, 51, 107, 1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#aad5ff", endColorstr="#05336b", GradientType=1);
padding: 14px;
float: right;
max-width: 30%;
text-align: right;
border: 4px outset rgba(231, 231, 229, 1);
-moz-border-radius: 10px 10px 10px 10px;
-webkit-border-radius: 10px 10px 10px 10px;
border-radius: 10px 10px 10px 10px;
-webkit-box-shadow: -1px -0px 1px 1px rgba(255, 255, 255, 0.75);
-moz-box-shadow: -1px -0px 1px 1px rgba(255, 255, 255, 0.75);
box-shadow: -1px -0px 1px 1px rgba(255, 255, 255, 0.75);
}

#system_footer_left {
background: rgb(170, 213, 255);
background: -webkit-linear-gradient(rgba(170, 213, 255, 0.5) 8%, rgba(5, 51, 107, 1) 29%, rgba(5, 51, 107, 0.6362920168067228) 67%, rgba(170, 213, 255, 1) 100%, rgba(5, 51, 107, 1) 100%);
background: -o-linear-gradient(rgba(170, 213, 255, 0.5) 8%, rgba(5, 51, 107, 1) 29%, rgba(5, 51, 107, 0.6362920168067228) 67%, rgba(170, 213, 255, 1) 100%, rgba(5, 51, 107, 1) 100%);
background: linear-gradient(rgba(170, 213, 255, 0.5) 8%, rgba(5, 51, 107, 1) 29%, rgba(5, 51, 107, 0.6362920168067228) 67%, rgba(170, 213, 255, 1) 100%, rgba(5, 51, 107, 1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#aad5ff", endColorstr="#05336b", GradientType=1);
padding: 14px;
float: left;
max-width: 30%;
text-align: left;
-moz-border-radius: 10px 10px 10px 10px;
-webkit-border-radius: 10px 10px 10px 10px;
border-radius: 10px 10px 10px 10px;
border: 3px outset rgba(208, 207, 204, .5);
-webkit-box-shadow: 1px -0px 1px 1px rgba(255, 255, 255, 0.75);
-moz-box-shadow: 1px -0px 1px 1px rgba(255, 255, 255, 0.75);
box-shadow: 1px -0px 1px 1px rgba(255, 255, 255, 0.75);
}

#system_footer_left:hover {
background: rgb(170, 213, 255);
background: -webkit-linear-gradient(rgba(170, 213, 255, 0.5) 8%, rgba(5, 51, 107, 1) 29%, rgba(5, 51, 107, 0.6362920168067228) 67%, rgba(170, 213, 255, 1) 100%, rgba(5, 51, 107, 1) 100%);
background: -o-linear-gradient(rgba(170, 213, 255, 0.5) 8%, rgba(5, 51, 107, 1) 29%, rgba(5, 51, 107, 0.6362920168067228) 67%, rgba(170, 213, 255, 1) 100%, rgba(5, 51, 107, 1) 100%);
background: linear-gradient(rgba(170, 213, 255, 0.5) 8%, rgba(5, 51, 107, 1) 29%, rgba(5, 51, 107, 0.6362920168067228) 67%, rgba(170, 213, 255, 1) 100%, rgba(5, 51, 107, 1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#aad5ff", endColorstr="#05336b", GradientType=1);
padding: 14px;
float: left;
max-width: 30%;
text-align: left;
-moz-border-radius: 10px 10px 10px 10px;
-webkit-border-radius: 10px 10px 10px 10px;
border-radius: 10px 10px 10px 10px;
border: 4px outset rgba(231, 231, 229, 1);
-webkit-box-shadow: 1px -0px 1px 1px rgba(255, 255, 255, 0.75);
-moz-box-shadow: 1px -0px 1px 1px rgba(255, 255, 255, 0.75);
box-shadow: 1px -0px 1px 1px rgba(255, 255, 255, 0.75);
}

.cny-logo-sm {
width: auto;
max-height: 35px;
object-fit: scale-down;
}

@media screen and (min-width: 300px) {
#system_footer_center {
font-size: calc(12px + (16 - 12) * ((100vw - 300px) / (1000 - 300)));
}
}


/* WITHOUT THE BLOCK BELOW, THE FONT WOULD CONTINUE TO GROW */

@media screen and (min-width: 1000px) {
#system_footer_center {
font-size: 16px;
}
}
<div id='system_footer'>
<div id='system_footer_left'>
<img src='../resources/logo/b_white_trans.png' alt='(Decorative) ' class='cny-logo-sm'>
</div>
<div id='system_footer_right'>
<img src='.../resources/logo/cny.png' alt='CNY (Logo)' class='cny-logo-sm'>
</div>
<div id='system_footer_center'>
<p>For technical support, please contact XXXX at <a href='mailto:DONTEMAIL@MY.BRAND.COM?subject=MCR System'>XXX@XXXX.XXX</a></p>

</div>
</div>

我试图让左右页脚元素框架动态地具有相同的宽度。

最佳答案

你可以尝试这样的事情。您不能通过 CSS 根据内容为 2 个元素设置相同的宽度,您可以以百分比或其他相对单位为两个容器设置宽度并对齐内部内容。我更新了悬停效果和大小,因为内容跳跃时看起来很糟糕。我删除了重复的 CSS,你在左边和右边的 block 上有相同的样式。图像保持宽高比,更新样式。抱歉我的英语不好。

.cny-logo-sm {
display: block;
margin: auto;
width: auto;
max-width: 100%;
max-height: 35px;
object-fit: contain;
}
#system_footer {
box-sizing: border-box;
display: flex;
justify-content: space-between;
padding: 5px 5px 0;
position: fixed;
left: 0;
bottom: 0;
right: 0;
width: 100%;
background-color: rgba(5, 51, 107, .75);
text-align: center;
margin: auto;
}

#system_footer_center {
flex: 1 0 auto;
padding: 10px;
bottom: 0;
background-color: transparent;
color: #FFD700;
text-align: center;
font-size: 12px;
font-weight: 500;
margin: auto;
word-wrap: break-word;
text-shadow: 2px 2px 2px #FF8C00;
}
#system_footer_right {
order: 3;
}
#system_footer_left,
#system_footer_right {
display: inline-block;
flex: 1 1 30%;
/*max-width: 30%;*/
box-sizing: border-box;
background: rgb(170, 213, 255);
background: -webkit-linear-gradient(rgba(170, 213, 255, 0.5) 8%, rgba(5, 51, 107, 1) 29%, rgba(5, 51, 107, 0.6362920168067228) 67%, rgba(170, 213, 255, 1) 100%, rgba(5, 51, 107, 1) 100%);
background: -o-linear-gradient(rgba(170, 213, 255, 0.5) 8%, rgba(5, 51, 107, 1) 29%, rgba(5, 51, 107, 0.6362920168067228) 67%, rgba(170, 213, 255, 1) 100%, rgba(5, 51, 107, 1) 100%);
background: linear-gradient(rgba(170, 213, 255, 0.5) 8%, rgba(5, 51, 107, 1) 29%, rgba(5, 51, 107, 0.6362920168067228) 67%, rgba(170, 213, 255, 1) 100%, rgba(5, 51, 107, 1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#aad5ff", endColorstr="#05336b", GradientType=1);
padding: 15px;
text-align: right;
border: 3px outset rgba(208, 207, 204, .5);
-moz-border-radius: 10px 10px 10px 10px;
-webkit-border-radius: 10px 10px 10px 10px;
border-radius: 10px 10px 10px 10px;
-webkit-box-shadow: -1px -0px 1px 1px rgba(255, 255, 255, 0.75);
-moz-box-shadow: -1px -0px 1px 1px rgba(255, 255, 255, 0.75);
box-shadow: -1px -0px 1px 1px rgba(255, 255, 255, 0.75);
}
#system_footer_left:hover,
#system_footer_right:hover {
background: rgb(170, 213, 255);
background: -webkit-linear-gradient(rgba(170, 213, 255, 0.5) 8%, rgba(5, 51, 107, 1) 29%, rgba(5, 51, 107, 0.6362920168067228) 67%, rgba(170, 213, 255, 1) 100%, rgba(5, 51, 107, 1) 100%);
background: -o-linear-gradient(rgba(170, 213, 255, 0.5) 8%, rgba(5, 51, 107, 1) 29%, rgba(5, 51, 107, 0.6362920168067228) 67%, rgba(170, 213, 255, 1) 100%, rgba(5, 51, 107, 1) 100%);
background: linear-gradient(rgba(170, 213, 255, 0.5) 8%, rgba(5, 51, 107, 1) 29%, rgba(5, 51, 107, 0.6362920168067228) 67%, rgba(170, 213, 255, 1) 100%, rgba(5, 51, 107, 1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#aad5ff", endColorstr="#05336b", GradientType=1);
padding: 14px;
max-width: 30%;
border: 4px outset rgba(231, 231, 229, 1);
-moz-border-radius: 10px 10px 10px 10px;
-webkit-border-radius: 10px 10px 10px 10px;
border-radius: 10px 10px 10px 10px;
-webkit-box-shadow: -1px -0px 1px 1px rgba(255, 255, 255, 0.75);
-moz-box-shadow: -1px -0px 1px 1px rgba(255, 255, 255, 0.75);
box-shadow: -1px -0px 1px 1px rgba(255, 255, 255, 0.75);
}

@media screen and (min-width: 300px) {
#system_footer_center {
font-size: calc(12px + (16 - 12) * ((100vw - 300px) / (1000 - 300)));
}
}

/* WITHOUT THE BLOCK BELOW, THE FONT WOULD CONTINUE TO GROW */

@media screen and (min-width: 1000px) {
#system_footer_center {
font-size: 16px;
}
}
<div id='system_footer'>
<div id='system_footer_left'>
<img src='https://via.placeholder.com/150x30' alt='(Decorative) ' class='cny-logo-sm'>
</div>
<div id='system_footer_right'>
<img src='https://via.placeholder.com/270x270' alt='CNY (Logo)' class='cny-logo-sm'>
</div>
<div id='system_footer_center'>
<p>For technical support, please contact XXXX at <a href='mailto:DONTEMAIL@MY.BRAND.COM?subject=MCR System'>XXX@XXXX.XXX</a></p>

</div>
</div>

关于html - 如何使用 CSS 使页脚元素的宽度相同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57205117/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com