首页 > 其他分享 >[前端]盒子模型

[前端]盒子模型

时间:2024-05-25 21:59:53浏览次数:21  
标签:style 盒子 前端 50px 边框 radius 25px border 模型

  • margin: 外边距
  • padding: 内边距
  • border: 边框

盒子的计算方式: 这个元素到底又多大

margin+border+padding+内容宽度

外边距

可能的值

说明

auto

设置浏览器边距。
这样做的结果会依赖于浏览器

length

定义一个固定的margin(使用像素,pt,em等)

%

定义一个使用百分比的边距

Margin可以使用负值,重叠的内容。

margin-top:100px;
margin-bottom:100px;
margin-right:50px;
margin-left:50px;
  • 上外边距是 100px
  • 右外边距是 50px
  • 下外边距是 100px
  • 左外边距是 50px

margin属性可以有一到四个值。

  • margin:25px 50px 75px 100px;
    • 上边距为25px
    • 右边距为50px
    • 下边距为75px
    • 左边距为100px
  • margin:25px 50px 75px;
    • 上边距为25px
    • 左右边距为50px
    • 下边距为75px
  • margin:25px 50px;
    • 上下边距为25px
    • 左右边距为50px
  • margin:25px;
    • 所有的4个边距都是25px

所有的CSS边距属性

属性

描述

margin

简写属性。在一个声明中设置所有外边距属性。

margin-bottom

设置元素的下外边距。

margin-left

设置元素的左外边距。

margin-right

设置元素的右外边距。

margin-top

设置元素的上外边距。

内边距

可能的值

说明

length

定义一个固定的填充(像素, pt, em,等)

%

使用百分比值定义一个填充


填充- 单边内边距属性

在CSS中,它可以指定不同的侧面不同的填充

padding-top:25px;
padding-bottom:25px;
padding-right:50px;
padding-left:50px;
  • 上内边距是 25px
  • 右内边距是 50px
  • 下内边距是 25px
  • 左内边距是 50px

填充 - 简写属性

为了缩短代码,它可以在一个属性中指定的所有填充属性。

这就是所谓的简写属性。所有的填充属性的简写属性是 padding

padding:25px 50px 75px 100px;

  • 上填充为25px
  • 右填充为50px
  • 下填充为75px
  • 左填充为100px

padding:25px 50px 75px;

  • 上填充为25px
  • 左右填充为50px
  • 下填充为75px

padding:25px 50px;

  • 上下填充为25px
  • 左右填充为50px

padding:25px;

  • 所有的填充都是25px

边框

border-style 值:

  • none: 默认无边框
  • dotted: 定义一个点线边框
  • dashed: 定义一个虚线边框
  • solid: 定义实线边框
  • double: 定义两个边框。 两个边框的宽度和 border-width 的值相同
  • groove: 定义3D沟槽边框。效果取决于边框的颜色值
  • ridge: 定义3D脊边框。效果取决于边框的颜色值
  • inset:定义一个3D的嵌入边框。效果取决于边框的颜色值
  • outset: 定义一个3D突出边框。 效果取决于边框的颜色值

边框宽度

您可以通过 border-width 属性为边框指定宽度。

为边框指定宽度有两种方法:可以指定长度值,比如 2px 或 0.1em(单位为 px, pt, cm, em 等),或者使用 3 个关键字之一,它们分别是 thick 、medium(默认值) 和 thin。

注意:CSS 没有定义 3 个关键字的具体宽度,所以一个用户可能把 thick 、medium 和 thin 分别设置为等于 5px、3px 和 2px,而另一个用户则分别设置为 3px、2px 和 1px。

p.one
{
    border-style:solid;
    border-width:5px;
}
p.two
{
    border-style:solid;
    border-width:medium;
}

边框颜色

border-color属性用于设置边框的颜色。可以设置的颜色:

  • name - 指定颜色的名称,如 "red"
  • RGB - 指定 RGB 值, 如 "rgb(255,0,0)"
  • Hex - 指定16进制值, 如 "#ff0000"

您还可以设置边框的颜色为"transparent"。

注意: border-color单独使用是不起作用的,必须得先使用border-style来设置边框样式。

p.one
{
    border-style:solid;
    border-color:red;
}
p.two
{
    border-style:solid;
    border-color:#98bf21;
}

边框-单独设置各边

在CSS中,可以指定不同的侧面不同的边框:

p
{
    border-top-style:dotted;
    border-right-style:solid;
    border-bottom-style:dotted;
    border-left-style:solid;
}

边框-单独设置各边

在CSS中,可以指定不同的侧面不同的边框

p
{
    border-top-style:dotted;
    border-right-style:solid;
    border-bottom-style:dotted;
    border-left-style:solid;
}

border-style属性可以有1-4个值:

  • border-style:dotted solid double dashed;
    • 上边框是 dotted
    • 右边框是 solid
    • 底边框是 double
    • 左边框是 dashed
  • border-style:dotted solid double;
    • 上边框是 dotted
    • 左、右边框是 solid
    • 底边框是 double
  • border-style:dotted solid;
    • 上、底边框是 dotted
    • 右、左边框是 solid
  • border-style:dotted;
    • 四面边框是 dotted

上面的例子用了border-style。然而,它也可以和border-width 、 border-color一起使用。

边框-简写属性

上面的例子用了很多属性来设置边框。

你也可以在一个属性中设置边框。

你可以在"border"属性中设置:

  • border-width
  • border-style (required)
  • border-color

    1. 边框的粗细
    2. 边框的样式
    3. 边框的颜色
border:5px solid red;

圆角边框和阴影

border-radius

#example1 {
  border: 2px solid red;
  border-radius: 25px;
}
 
#example2 {
  border: 2px solid red;
  border-radius: 50px 20px;
}
语法

border-radius: 1-4 length|% / 1-4 length|%;

注意: 每个半径的四个值的顺序是:左上角,右上角,右下角,左下角。如果省略左下角,右上角是相同的。如果省略右下角,左上角是相同的。如果省略右上角,左上角是相同的。

描述

length

定义弯道的形状。

%

使用%定义角落的形状。

border-radius: 1em/5em;

/* 等价于: */

border-top-left-radius:     1em 5em;
border-top-right-radius:    1em 5em;
border-bottom-right-radius: 1em 5em;
border-bottom-left-radius:  1em 5em;
border-radius: 4px 3px 6px / 2px 4px;

/* 等价于: */

border-top-left-radius:     4px 2px;
border-top-right-radius:    3px 4px;
border-bottom-right-radius: 6px 2px;
border-bottom-left-radius:  3px 4px;

椭圆边框 - border-radius: 15px 50px 30px 5px:第一个值适用于左上角,第二个值适用于右上角,第三个值适用于右下角,第四个值适用于左下角:


 

椭圆边框 - border-radius: 15px 50px 30px:第一个值适用于左上角,第二个值适用于右上角和左下角,第三个值适用于右下角:


 

椭圆边框 - border-radius: 15px 50px:第一个值适用于左上角和右下角,第二个值适用于右上角和左下角


 

椭圆边框 - border-radius: 15px:该值适用于所有四个角,均等圆角

````asdfsfd

背景图带边框:

#rcorners3 {
  border-radius: 25px;
  background: url(paper.gif);
  background-position: left top;
  background-repeat: repeat;
  padding: 20px;
  width: 200px;
  height: 150px;
}

不同类型参数:

#rcorners7 {
    border-radius: 50px/15px;
    background: #8AC007;
    padding: 20px; 
    width: 200px;
    height: 150px; 
}
#rcorners8 {
    border-radius: 15px/50px;
    background: #8AC007;
    padding: 20px; 
    width: 200px;
    height: 150px; 
}
 
#rcorners9 {
    border-radius: 50%;
    background: #8AC007;
    padding: 20px; 
    width: 200px;
    height: 150px;
}

不同参数个数:

#rcorners4 {
    border-radius: 15px 50px 30px 5px;
    padding: 20px;
    width: 200px;
    height: 150px;
}
 
#rcorners5 {
    border-radius: 15px 50px 30px;
    padding: 20px;
    width: 200px;
    height: 150px;
}
 
#rcorners6 {
    border-radius: 15px 50px;
    padding: 20px;
    width: 200px;
    height: 150px;
}
 
#rcorners7 {
    border-radius: 15px;
    padding: 20px;
    width: 200px;
    height: 150px;
}

简写格式:

#example1 {
  border-radius: 2em / 5em;
}
/* 等价于:
border-top-left-radius: 2em 5em;
border-top-right-radius: 2em 5em;
border-bottom-right-radius: 2em 5em;
border-bottom-left-radius: 2em 5em; */
 
#example2 {
  border-radius: 2em 1em 4em / 0.5em 3em;
}
/* 等价于:
border-top-left-radius: 2em 0.5em;
border-top-right-radius: 1em 3em;
border-bottom-right-radius: 4em 0.5em;
border-bottom-left-radius: 1em 3em; */

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>圆角边框和阴影</title>
    <style>
        .div1 {
            width: 200px;
            height: 400px;
            border: 1px solid darkorange;
            border-radius: 200px 0 0 200px;
            background: red;
        }

        .div2 {
            width: 400px;
            height: 400px;
            border-radius: 200px;
            background: darkorange;
        }

        .div3 {
            width: 400px;
            height: 200px;
            border-radius: 200px 200px 0 0;
            background: dodgerblue;
        }

        .div4 {
            width: 200px;
            height: 200px;
            border-radius: 200px 0 0 0;
            background: darkkhaki;
        }

        .div5 {
            width: 400px;
            height: 400px;
            border-radius: 60px 100px 140px 180px;
            background: gray;
        }
    </style>
</head>
<body>
<div>
    <div class="div1"></div>
    <div class="div2"></div>
    <div class="div3"></div>
    <div class="div4"></div>
    <div class="div5"></div>
</div>
</body>
</html>

阴影 box-shadow

属性定义及使用说明

box-shadow属性可以设置一个或多个下拉阴影的框。

默认值:

none

继承:

no

版本:

CSS3

JavaScript 语法:

object.style.boxShadow="10px 10px 5px #888888"

语法

box-shadow: h-shadow v-shadow blur spread color inset;

注意:boxShadow 属性把一个或多个下拉阴影添加到框上。该属性是一个用逗号分隔阴影的列表,每个阴影由 2-4 个长度值、一个可选的颜色值和一个可选的 inset 关键字来规定。省略长度的值是 0。
 

说明

h-shadow

必需的。水平阴影的位置。允许负值

v-shadow

必需的。垂直阴影的位置。允许负值

blur

可选。模糊距离

spread

可选。阴影的大小

color

可选。阴影的颜色。在CSS颜色值

寻找颜色值的完整列表

inset

可选。从外层的阴影(开始时)改变阴影内侧阴影

标签:style,盒子,前端,50px,边框,radius,25px,border,模型
From: https://blog.csdn.net/qq_64609861/article/details/139077177

相关文章

  • 弹性盒子布局,flex布局
    弹性盒子布局(Flexbox)是CSS3引入的一种新的布局模式,它提供了一种更加有效的方式来设计、布局和对齐容器中的项目,即使容器的大小动态改变或者项目的数量未知。弹性盒子布局的主要特点是能够轻松地在不同的屏幕大小和设备上实现一致的布局,通过为父容器(弹性容器)设置display:flex;......
  • 草图大师怎么去画好一个建筑别墅su模型呢?
    其实,我们经常画别墅的时候,都会要画别墅,我们画一个欧式风格的别墅,要在草图大师中创建一个优秀的建筑别墅模型,可以按照以下步骤进行:skp模型库1.收集参考资料:在开始之前,收集一些建筑别墅的照片、平面图和立面图等参考资料。这将有助于你更好地理解建筑的结构、风格和细节。......
  • Keras深度学习框架第二十五讲:使用KerasNLP预训练Transformer模型
    1、KerasNPL预训练Transformer模型概念使用KerasNLP来预训练一个Transformer模型涉及多个步骤。由于Keras本身并不直接提供NLP的预训练模型或工具集,我们通常需要结合像TensorFlowHub、HuggingFace的Transformers库或自定义的Keras层来实现。以下是一个简化的步骤概述,用......
  • 大模型的灵魂解读:Anthropic AI的Claude3 Sonnet可解释性研究
    大模型技术论文不断,每个月总会新增上千篇。本专栏精选论文重点解读,主题还是围绕着行业实践和工程量产。若在某个环节出现卡点,可以回到大模型必备腔调重新阅读。而最新科技(Mamba,xLSTM,KAN)则提供了大模型领域最新技术跟踪。若对于构建生产级别架构则可以关注AI架构设计专栏。技......
  • 大模型之战:阿里与字节的‘平民化’革命,谁将改写AI未来的价格版图?
    近期,中国大模型市场掀起了一场前所未有的降价风潮,阿里与字节跳动两大科技巨头的举动尤为抢眼。继字节跳动于上周高调宣称其大模型产品——豆包,在成本上比行业标准低99.3%后,阿里云也迅速跟进,于5月21日正式宣布对旗下的“通义千问”大模型系列进行重大价格调整。其中,旗舰级的G......
  • TCP/IP体系模型简介
    一、TCP/IP概念TCP(TransmissionControlProtocol传输控制协议):是一种面向连接的、可靠的传输层协议。通过三次握手建立连接,确保连接的可靠建立。对数据进行有序传输,并具有确认机制和重传机制来保证数据的完整性。提供流量控制和拥塞控制功能,以适应不同的网络状况。IP(Int......
  • 大模型最新黑书:大模型应用解决方案: 基于GPT-3、ChatGPT、GPT-4等Transformer架构的自
    今天给大家推荐一本丹尼斯·罗斯曼(DenisRothman)编写的关于大语言模型(LLM)权威教程<<大模型应用解决方案>基于GPT-3、ChatGPT、GPT-4等Transformer架构的自然语言处理>!Google工程总监AntonioGulli作序,这含金量不用多说,在这里给大家强烈推荐一下这本黑书,下面直接开始介绍!......
  • 大模型开发:第一批用 LangChain 的程序员,早就已经碾压同事了。。
    今年招聘市场确实是好点了,我发现群友都在讨论,得赶快学点AI大模型。他们有的是想正式转到一些新兴的AI行业,需要系统的学习训练。更多的是想跟已有的技能结合,辅助编程提效,或上手实操应用,增加自己的职场竞争力。这也可以理解,ChatGPT推出仅一年半的时间,就将生成式AI推......
  • 基于附带Attention机制的seq2seq模型架构实现英译法的案例
    模型架构先上图我们这里选用GRU来实现该任务,因此上图的十个方框框都是GRU块,如第二张图,放第一张图主要是强调编码器的输出是作用在解码器每一次输入的观点,具体的详细流程图将在代码实现部分给出。编码阶段1.准备工作要用到的数据集点此下载,备用地址,点击下载导入相关的......
  • 探索大模型的智慧之源:如何使其更“聪明”?
            在人工智能技术的浪潮中,大模型已经成为了引领变革的重要力量。它们在语言理解、图像识别、自然语言生成等多个领域展现出了令人瞩目的能力。然而,正如任何技术进步都伴随着挑战,大模型在理解力、泛化能力和适应性方面仍有待提升。那么,我们如何让这些庞然大物变得......