css动态背景制作,CSS星空动态背景

28f4586cfc36be39db745380daf7aafd.png

sharo1

2021/7/1 12:13:40

父容器 {/*设置宽高*/

width: 100%;

height: 100%;

/*下面的属性是必须的*/

position: relative;

background: radial-gradient(200% 100% at bottom center, #f7f7b6, #e96f92, #75517d, #1b2947);

background: radial-gradient(220% 105% at top center, #1b2947 10%, #75517d 40%, #e96f92 65%, #f7f7b6);

background-attachment: fixed;

overflow: hidden;

}

组件:

transformOrigin:'0 0 '+(distance+Math.random()*300)+'px',

transform:'translate3d(0,0,-'+(distance+Math.random()*300)+'px) rotateY('+(Math.random()*360)+'deg) rotateX('+(Math.random()*-50)+'deg) scale('+(0.2+Math.random())+','+(0.2+Math.random())+')'

}">

export default {

name: "star-bg",

data() {

return {}

},

methods: {},

props: {

stars: {

type: Number,

default: 1000

},

distance: {

type: Number,

default: 800

}

},

}

body {

}

@keyframes rotate {

0% {

transform: perspective(400px) rotateZ(20deg) rotateX(-40deg) rotateY(0);

}

100% {

transform: perspective(400px) rotateZ(20deg) rotateX(-40deg) rotateY(-360deg);

}

}

.star-bg{

background-color: transparent;

transform: perspective(500px);

transform-style: preserve-3d;

position: absolute;

bottom: 0;

perspective-origin: 50% 100%;

left: 50%;

animation: rotate 90s infinite linear;

}

.star-bg-star {

width: 2px;

height: 2px;

background: #f8f8ee;

position: absolute;

top: 0;

left: 0;

transform-origin: 0 0 -300px;

transform: translate3d(0, 0, -300px);

backface-visibility: hidden;

}

使用: 向父容器添加css 然后注册组件,在父容器里使用

可以通过以下步骤利用 CSS 制作静态星空背景: 1. 为 HTML 页面添加一个容器元素,例如 div,用于容纳星空背景。 2. 设置容器元素的宽度和高度,并将其 position 属性设置为 fixed,这样可以使其固定在浏览器窗口中。 3. 在容器元素中创建一个伪元素,用于绘制星星。可以使用 CSS 的 content 属性来插入内容,使用 position 属性将伪元素定位在容器元素中心。 4. 使用 CSS 的 animation 和 keyframes 属性创建动画效果,以使星星随机闪烁。 下面是一个示例 CSS 代码: ```css body { margin: 0; padding: 0; } .container { width: 100%; height: 100vh; position: fixed; background-color: #000; } .container::before { content: ""; position: absolute; top: 50%; left: 50%; width: 800px; height: 800px; margin-top: -400px; margin-left: -400px; background-image: url(star.png); animation: twinkling 10s linear infinite; } @keyframes twinkling { 0% { opacity: 0.1; } 50% { opacity: 1; } 100% { opacity: 0.1; } } ``` 在这个例子中,我们使用一个容器元素 `.container` 并设置其宽度和高度为 100% 和 100vh,将其 position 设置为 fixed,以保证其固定在浏览器窗口中。然后我们使用伪元素 `::before` 来绘制星星背景,并将其定位在容器元素中心。 为了使星星出现闪烁效果,我们使用了 animation 和 keyframes 属性来创建一个名为 `twinkling` 的动画。动画周期为 10 秒,线性运动,无限循环。在 keyframes 中,我们调整了星星的透明度,以产生闪烁效果。 注意:在这个例子中,我们使用了一张名为 `star.png` 的背景图片,该图片包含了许多星星。你可以使用任何你想要的星空背景图片。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值