HTML行级元素和块级元素区别和转化(displays属性)

1.块级标签与行级标签的区别:
1.块级元素可以设置宽高,行级元素不能设置宽高(只能根据文字来设置,比较特殊的是img\input是可以设置宽高);
2.块级元素是独占一行,行级元素不行;

2.块级元素和行级元素的转化
a.块级转行级
例子:div->行级

1.div为正常的块级标签时,与span行级文字时
<head>
        <meta charset="UTF-8">
        <style type="text/css">
            div{
                width: 200px;
                height: 200px;
                outline: 1px dashed red;//1像素红色虚线
            }
        </style>
    </head>
    <body>
        <div>我是div</div>啊啊啊啊
        <span> aaaaaa</span>
    </body>
</html>

效果如图:这里写图片描述
2. div—>行级(display:inline),这里只贴出div的样式,其他的与上面一致。

            div{
                width: 200px;
                height: 200px;
                outline: 1px dashed red;
                display: inline;
                /*转化为行级标签这时div设置的宽高无效,因为行级标签不能设置宽高*/
            }

效果如图:
这里写图片描述

解析:转化为行级标签这时div设置的宽高无效,因为行级标签不能设置宽高,


b.行级转块级
例子:span->块级(display:block)

<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
        <style type="text/css">
            span{
                width: 200px;
                height: 200px;
                outline: 1px dashed red;
                display: block;/*转化为块级标签*/
            }
        </style>
    </head>
    <body>
        <span>aaaaaa</span>
        啊啊啊 
    </body>
</html>

效果如图:
这里写图片描述


c.行级转块级但是又不独占一行
span—>块级但是不独占一行(display:online-block)
例子(代码基本与b的例子一致,就是display属性不一样):

        span{
                width: 200px;
                height: 200px;
                outline: 1px dashed red;
                display: inline-block;/*转化为块级标签*/
            }
        </style>
效果如图所示

这里写图片描述

解析:对比c和b举的例子可以比较清楚的发现,虽然c已经转化成了块级元素,但是没有独占一行。


总结

1.display:inline;//将块级元素转化为行级元素,这时块级元素设置的宽高无效
2.display:block;//将行级元素转块级元素,这时原本的行级元素会变成块级元素独占一行,同时可以设置宽高
3.display:inline-block;//将行级元素转块级元素,不会独占一行,可以设置宽高

ps:突然发现这个Markdown编辑器有很多bug…

### Vue2 中修改元素块级元素的方法 在 Vue2 项目中,可以通过多种方式将元素转换为块级元素。主要方法是在组件的模板部分应用 CSS 类或直接使用内联样式。 #### 使用类名绑定的方式 推荐的做法是通过 `v-bind:class` 或者缩写形式 `:class` 来动态绑定 CSS 类: ```html <template> <div id="app"> <!-- 绑定 class --> <span :class="{ 'block-element': isBlock }">这是一个可以变成块状的 span</span> <button @click="toggleDisplay()">切换显示模式</button> </div> </template> <script> export default { data() { return { isBlock: false, }; }, methods: { toggleDisplay() { this.isBlock = !this.isBlock; } } } </script> <style scoped> .block-element { display: block; /* 将原本的元素转成块 */ } /* 默认情况下保持原有特性 */ span { color: blue; } </style> ``` 上述代码展示了如何利用 Vue 的响应式数据属性 `isBlock` 控制是否给 `<span>` 添加 `.block-element` 这个类[^1]。当点击按钮触发 `toggleDisplay()` 函数时,会改变 `isBlock` 的布尔值状态,从而实现样式的切换效果。 #### 直接使用内联样式 如果只需要简单地更改某个特定实例而不希望创建额外的 CSS 文件,则可以直接采用内联样式的方式来调整元素为: ```html <template> <div id="app"> <!-- 内联 style 绑定 --> <a v-bind:style="{display: inlineOrBlock}">链接文本</a> <button @click="changeDisplayStyle()">改变展示风格</button> </div> </template> <script> export default { data() { return { inlineOrBlock: "inline", // 初始状态下为元素 }; }, methods: { changeDisplayStyle() { this.inlineOrBlock = this.inlineOrBlock === "inline" ? "block" : "inline"; } } }; </script> ``` 这段例子说明了怎样借助 JavaScript 动态更新 HTML 属性中的 `style` 字段来即时改变 DOM 元素的表现形态[^2]。
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值