CSS-文本域和输入框美化处理、文字和图片对齐、文字超出文本域以省略号显示、magin的运用

文本域和输入框美化处理

调整边框和背景:

input[type="text"], textarea {
    border: 1px solid #ccc;
    border-radius: 5px;
    background-color: #f9f9f9;
    padding: 5px;
}

调整字体和颜色:

input[type="text"], textarea {
    font-family: Arial, sans-serif;
    color: #333;
}

添加阴影效果:

input[type="text"], textarea {
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.1);
}

设置悬停效果:

input[type="text"]:hover, textarea:hover {
    border-color: #999;
}

调整焦点样式:

input[type="text"]:focus, textarea:focus {
    outline: none;
    border-color: #007bff;
    box-shadow: 0 0 5px rgba(0, 123, 255, 0.5);
}

示例

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>文本域输入框的美化处理</title>

    <style>
        /* 取消输入框锁定的轮廓颜色 */
        input {
            outline: none;
        }
        
        textarea {
            padding: 10px;
            outline: none;
            resize: none;
        }
    </style>
</head>

<body>
    <input type="text">
    <textarea cols="30" rows="10"></textarea>
</body>

</html>

在这里插入图片描述

文字和图片对齐

要在网页中实现文字和图片的对齐,可以使用CSS中的display属性和vertical-align属性来控制它们的排列方式。

  • 行内元素对齐:将文字和图片都设置为行内元素,然后使用vertical-align属性来垂直对齐它们。
span {
    display: inline-block;
    vertical-align: middle;
}
img {
    display: inline-block;
    vertical-align: middle;
}
  • 文本环绕图片:可以使用float属性将图片设置为浮动,使文本环绕图片显示。
img {
    float: left; /* 或 float: right; */
    margin-right: 10px; /* 可以根据需要调整间距 */
}
  • Flex布局:使用Flexbox布局可以更灵活地控制元素的排列方式。
.container {
    display: flex;
    align-items: center; /* 垂直居中对齐 */
}
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>文字图片对齐</title>
	<style>
		span {
		    display: inline-block;
		    vertical-align: middle;
		}
		img {
		    display: inline-block;
		    vertical-align: middle;
		}
		
		.img1 {
		    float: left; /* 或 float: right; */
		    margin-right: 10px; /* 可以根据需要调整间距 */
		}
		
		.container {
		    display: flex;
		    align-items: center; /* 垂直居中对齐 */
		}

		
	</style>
</head>

<body>

    <img width="100px" height="100px" style="border-radius: 255px;vertical-align: middle;" src="img/7bf51d9fa40156eccb6c7cec218996368dc72872.jpg" /> 姓名:小明
	我是谁
	<img  width="100px" height="100px" src="img/bg.jpg">我是谁
	<img  class="img1" width="100px" height="100px" src="img/bg.jpg">我是谁
	
	
	

</body>

</html>

在这里插入图片描述

当图片底部出现空白

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>图片底部空白bug</title>
</head>

<body>
    <div style=" border: 2px solid black;">
        <img style="vertical-align: top;" src="img/img.jpg">
    </div>
</body>
</html>

在这里插入图片描述
在这里插入图片描述

文字超出文本域以省略号显示

要在CSS中实现当文字超出文本域时以省略号(…)显示多余的内容,可以使用CSS的text-overflow属性结合white-space和overflow属性来实现。

.text-overflow {
    white-space: nowrap; /* 禁止换行 */
    overflow: hidden; /* 隐藏溢出内容 */
    text-overflow: ellipsis; /* 显示省略号 */
}

white-space属性设置为nowrap,表示禁止换行;overflow属性设置为hidden,表示隐藏溢出内容;text-overflow属性设置为ellipsis,表示当内容溢出时显示省略号。

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>文字超出省略号</title>
</head>

<body>


    <!-- 单行省略 -->
    <div style="width: 100px;background-color: aqua;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;">
        我我我我我我我我我我我我我我我我我我我我我我我我我我我我我 我我我我我我我我我我我我我我我我我我我我我我我我我我我我我
    </div>


    <!-- 多行省略 
    多行显示模板 兼容性不太好
    溢出隐藏
    overflow: hidden;
    转换成弹性盒子
    display: -webkit-box;
    设置显示行数
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    
    
    
    -->
    <div style="width: 100px;background-color: aquamarine;
    overflow: hidden;
    display: -webkit-box;-webkit-line-clamp: 3;-webkit-box-orient: vertical;">
        我我我我我我我我我我我我我我我我我我我我我我我我我我我我我 我我我我我我我我我我我我我我我我我我我我我我我我我我我我我 我我我我我我我我我我我我我我我我我我我我我我我我我我我我我 我我我我我我我我我我我我我我我我我我我我我我我我我我我我我
    </div>



</body>

</html>

在这里插入图片描述

magin的运用

CSS中的margin属性可以用于在元素周围创建空白间隔,实现页面布局的调整和美化。以下是一些巧妙运用margin属性的方法:

居中元素:通过设置左右margin为auto,可以将元素水平居中。

.center {
    margin: 0 auto;
}

创建间距:通过设置不同方向的margin值,可以在元素之间创建间距。


.element {
    margin: 10px; /* 上下左右间距均为10px */
    margin-top: 20px; /* 上方间距为20px */
    margin-bottom: 30px; /* 下方间距为30px */
}

清除浮动:通过在父元素上设置overflow: auto;或使用clearfix技巧,可以清除浮动元素造成的布局问题。


.parent {
    overflow: auto;
}
.clearfix::after {
    content: "";
    display: table;
    clear: both;
}

实现垂直居中:通过设置上下margin为auto,可以实现元素在父容器中垂直居中。


.vertical-center {
    margin: auto 0;
}

创建响应式布局:通过设置不同屏幕尺寸下的margin值,可以实现响应式布局的调整。


@media screen and (max-width: 768px) {
    .element {
        margin: 5px;
    }
}
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">

    <title>margin巧妙运用</title>

    <style>
        ul li {
            position: relative;
            float: left;
            list-style: none;
            width: 150px;
            height: 200px;
            border: 1px solid red;
            margin-left: -1px;
        }
        /*         
        ul li:hover {
            1. 如果盒子没有定位,则鼠标经过添加相对定位即可
            position: relative;
            border: 1px solid blue;
        } */
        
        ul li:hover {
            /* 2 .如果盒子有定位 */
            z-index: 1;
            position: relative;
            border: 1px solid blue;
        }
    </style>
</head>

<body>
    <ul>
        <li>1</li>
        <li>2</li>
        <li>3</li>
        <li>4</li>
        <li>5</li>

    </ul>


</body>

</html>

在这里插入图片描述

最近更新

  1. TCP协议是安全的吗?

    2024-04-10 06:34:08       19 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-04-10 06:34:08       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-04-10 06:34:08       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-04-10 06:34:08       20 阅读

热门阅读

  1. 数据建模:维度建模

    2024-04-10 06:34:08       14 阅读
  2. 成都龙渊网络 UE客户端开发(20min)

    2024-04-10 06:34:08       14 阅读
  3. torch.nn.LSTM

    2024-04-10 06:34:08       14 阅读