盒子细节问题和居中显示

一.盒子模型

  https://www.cnblogs.com/smyhvae/p/7256371.html

  问题1:盒子的height和width是中间内容框的height和width。这里1234是内容框内的内容。要让内容1234在盒子中居中显示:

    (1)水平居中显示:text-align:center 设置块状元素中文字的水平对齐

    (2)垂直居中显示:

           CSS中的确是有vertical-align属性,但是它只对(X)HTML元素中拥有valign特性的元素才生效,例如表格元素中的<td>、<th>、                                <caption>等,而像<div>、<span>这样的元素是没有valign特性的,因此使用vertical-align对它们不起作用。

      所以我们有其他一些方法:http://www.cnblogs.com/wilsonliu/archive/2008/12/15/1355134.html

    (3)盒子正中央显示:

        代码:

 1 <!DOCTYPE html>
 2 <html>
 3     <head>
 4         <meta charset="UTF-8">
 5         <title>盒子正中央显示</title>
 6         <style type="text/css">
 7             div {
 8                 position: absolute;
 9                 width: 100px;
10                 height: 100px;
11                 left: 50%; top: 50%;
12                 margin-left:-50px; margin-top:-50px;
13                 background-color: #E6E6FA;
14                 border: solid red;
15                 }
16         </style>
17     </head>
18     <body>
19         <div>box0</div>
20     </body>
21 </html>

        原理解释:

    

        这里盒子不直接left具体的值是因为那样可能会让盒子不随窗口的变化居中。所以我们设置position为absolute,是希望不论窗口的大                       小如何变化,盒子都在中央。

        引申问题6:当margin值为负值时是什么意思?

          例如:margin-left:20px   =   盒子向左移动20px。也就是盒子的左边框向左移动20px。  

  问题2:background-color填充的是整个border以内的区域。

     问题3:当不指定padding大小时。padding默认为0.

     

  问题4:小属性和大属性。

      例如:

padding-right:20px;
padding:50px;

           第一行的小属性会被第二行的大属性给层叠掉。

  问题5:border的拆分

      

  border属性是能够被拆开的,有两大种拆开的方式:

  • (1)按三要素拆开:border-width、border-style、border-color。(一个border属性是由三个小属性综合而成的)
  • (2)按方向拆开:border-top、border-right、border-bottom、border-left。

  现在我们明白了:一个border属性,是由三个小属性综合而成的。如果某一个小属性后面是空格隔开的多个值,那么就是上右下左的顺序。

    例:

  问题6:和定位属性的关系(fixed,relative,absolute)

      http://www.cnblogs.com/JianweiWang/p/5190262.html

      1.fixed,relative,absolute

        ①fixed

      相对于网页窗口位置不变。固定定位的元素会始终位于浏览器窗口内视图的某个位置, 不会受文档流动影响, 它不会随浏览器窗口的滚动条滚动而变化。例如网站中的那些小广告窗口。

             ②relative

      相对于原本的位置移动。那么,原本的位置是在哪?现在的理解是初始的位置是在浏览器的左上角。所以移动是以左上角为标准。

      相对定位,当父元素只有这一个元素时,始终相对与父元素左上角定位,不管父元素是否有position定位;但如果这个父元素里面有多个子元素,那情况会有不同了,此时定位还受这些元素中的使用了relative的元素的影响(仅仅是relative,如果是使用的absolute或fixed的那些子元素不并会对当前的定位产生影响)。

        ③absolute

      相对于父元素的移动。绝对的意思就是, 一个层级放在另一个层级上面, 也就是一块放在另一块上, 子层级在父层级上面的精确坐标就是绝对定位, 给它一个绝对的值让他不会乱动, 同样的, 父层级移动了, 子层级也会跟着动, 也就是说这两个相对的层级用绝对的布局拴住了, 学习这你就使劲的敲就行了. 同时给大家一点层级的概念, <body>里面有各种块, 比如<div>, 那么一块<div>就可以理解为一个层级, 你对这个<div>的属性做设置, 绝对定位, 那么<div>就和<body>栓死了, 同样的<div>里面有一个<p>, <p>也设置绝对定位, 这个时候<p>的层级就是相对<div>了, <div>动, <p>也会在<div>里面乖乖的跟着走, 综上, 这就是绝对定位!  也就是说子和父??了。

         当该元素位置变动时是在父元素层上移动的。并且当父元素移动时该子元素也是随着一起移动的。

        

      2.盒子和position间的关系。待补充。。。。。

                 

原文地址:https://www.cnblogs.com/caicaiyu/p/9677711.html

时间: 2025-01-06 02:30:34

盒子细节问题和居中显示的相关文章

定位的盒子居中显示

一.定位的盒子居中显示 ★:margin:0 auto;  只能让标准流的盒子居中对齐. ★定位的盒子居中:先向右走父元素盒子的一半50%,再向左走子盒子的一半(margin-left:负值.) 二.设置盒子左外边距为auto,将盒子冲到右边 margin-left:auto;

Android Hack1 使用weight属性实现视图的居中显示

本文地址:http://www.cnblogs.com/wuyudong/p/5898403.html,转载请注明源地址. 如果要实现如下图所示的将按钮居中显示,并且占据父视图的一半,无论屏幕是否旋转 合用weightSum属性和layout_weight属性 不同Android设备的尺寸往往是不同的.作为开发者,我们需要创建适用于不同尺寸屏幕的XML文件.硬编码是不可取的,因此需要其他方法来组织视图. 本文分析如何合用layout_weight和weightSum这两个属性来填充布局内部的任意

单独一个img标签的居中显示

针对页面当中通过img插入图片的时候,要保证这个图片在页面内容当中居中,一般的做法是在外面套一个div,通过给div加入 {margin:0 auto;} 来控制图片的居中. 那么如果针对后台上传的图片这样做就不行了,所以这里介绍一种做法是: 如下代码: 只要加上这个css样式就可以在父盒子里完全居中显示了! img{ margin:0 auto; display:block;} 这样就可以解决单独图片居中的问题.

CSS文本居中显示

因为一直为元素居中问题而困扰,所以决定把自己遇到和看到的方法记录下来,以便以后查看 如果要让inline或inline-block元素居中显示,则父元素css中包含text-align:center; 如果让block元素居中,为其本身添加margin:0 auto; 复杂情形下可以用: display:flex; /*盒子模型*/ flex-direction: row; /*横向*/ justify-content: space-around; /*主轴居中*/ align-items: c

Js打开网页后居中显示

使用JavaScript定义打开网页后居中显示,并可为窗口设置大小,使用“window.open”方法打开新窗口:先来看完整的代码及调用方法: <html xmlns="http://www.w3.org/1999/xhtml" > <head> <title>打开居中的窗口</title> <script language="javascript"> //参数-url:要打开的网站,winname:打开后

Qt窗口屏幕居中显示(有专门的QDesktopWidget,先计算后显示)

窗口的屏幕居中显示问题,在各开发工具中原理相同,首先使用特定的方法得到显示屏幕的宽度和高度,再根据窗口本身的宽度和高度计算出窗口的左上角坐标位置. Qt中可以采用两种方法达到窗口的屏幕居中显示: 方法一: 显示前先计算出窗口显示位子,并移到对应位子后再显示窗口 int main(int argc, char *argv[]){ QTextCodec::setCodecForTr(QTextCodec::codecForName("GB18030")); QApplication a(a

文字换行,文字省略号,无宽度大小居中显示,模拟固定高度

个人笔记 1.word-break:break-all;   换行 2. white-space:nowrap; overflow:hidden; text-overflow:ellipsis;  省略号 3.固定高度1:html{height:100%;overflow:hidden;}body{margin:0; height:100%;overflow:auto;}.box{height:2000px;}.div{width:100px;height:100px;background:re

unity3d webplayer 16:9 居中显示模板

原地址:http://www.cnblogs.com/88999660/archive/2013/04/12/3016773.html <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml&q

关于UIImageView的显示问题——居中显示或者截取图片的中间部分显示

我们都知道在ios中,每一个UIImageView都有他的frame大小,但是如果图片的大小和这个frame的大小不符合的时候会怎么样呢?在默认情况,图片会被压缩或者拉伸以填满整个区域. 通过查看UIView的属性可以知道,view的contentMode属性可以用来控制图片的显示情况.下面的设置可以让图片进行居中显示. 1 imageView.contentMode =  UIViewContentModeCenter; 这个居中是包括了,横向和纵向都是居中.图片不会拉伸或者压缩,就是按照im