如何使用 JavaScript 设置图像边框是否应该重复、圆角或拉伸?
本教程将教我们如何使用 JavaScript 设置图像边框是否应该重复、圆角或拉伸。使用 borderImageRepeat 属性来设置图像边框是否应重复、圆角或拉伸。
边框用于装饰或突出显示元素。您可以定义其宽度、颜色和边框类型。可以将各种样式应用于边框。但是,这些边框没有任何特殊效果或其他设计。
使用border-image属性,我们可以将图像设置为元素的边框。它不像一条线。它将是我们选择作为边框的图像。border-image 是一个 CSS 属性,它将图像设置为边框。这也可以使用 JavaScript DOM 的 borderImage 样式属性来完成。
还有多个属性可以设置图像边框的样式。您可以使用名为 borderImageRepeat 属性的 JavaScript 样式,使图像边框重复、圆角或拉伸。
因此,让我们看看如何使用 JavaScript 设置图像边框是否应该重复、圆角或拉伸。
以下是我们可以使用来设置图像边框是否应该重复、圆角或拉伸的属性:
- 使用 borderImageRepeat 属性
- 使用 borderImage 属性
使用 DOM 的 borderImageRepeat 属性
有不同尺寸的不同图像。因此,它们不会适合边框的宽度。使用的 borderImageRepeat 用于设置边框图像应该重复、圆角或拉伸。使用此属性,我们可以定义图像是否可以重复或通过拉伸填充整个区域。
用户可以按照以下语法使用 JavaScript 设置图像边框重复。
语法
var element = document.getElementById(" <Id here> "); element.style.borderImageRepeat = "stretch|repeat|round|initial | inherit"
您可以按照上述语法设置 borderImageRepeat 属性。
参数
- stretch - 拉伸图像以填充整个边框区域。
- repeat - 对所有可用空间重复图像。
- round - 重复图像并调整图像大小以填充区域。
- initial - 设置为默认值。
- inherit - 从其父元素继承。
示例
在以下示例中,我们使用了 borderImageRepeat 属性将图像添加为元素的边框。我们使用了 round 值来填充图像并重新缩放它。
<!DOCTYPE html> <html> <head> <style> div{ background-color: blue; border: 30px solid; border-image: url('https://tutorialspoint.com/html5/images/html5-mini-logo.jpg'); border-image-slice: 10 10 30 30; border-image-width: 1 1 1 1; border-image-repeat: stretch; } </style> </head> <body> <div id="box"> <p> Demo Text! </p> <p> Demo Text! </p> <p> Demo Text! </p> </div> <button onclick="display()">Click me!</button> <script> function display() { document.getElementById("box").style.borderImageRepeat = "round"; } </script> </body> </html>
在上面的示例中,用户可以看到我们使用了 borderImageRepeat 属性使用 JavaScript 将图像设置为元素的边框。
使用 DOM 的 borderImage 属性
我们将声明一个带宽度的边框,然后图像将添加到边框的宽度内。但是,图像的尺寸不同,因此它们不会精确地适合边框。我们可以使其保持原始大小,将其拉伸以使其适合,或者重复它直到适合边框。
borderImage 属性是一个简写属性,用于使用图像边框并设置其样式。它包含诸如图像源、图像宽度、图像边框的偏移量和图像的重复等属性。
我们可以使用 borderImage 属性将图像设置为边框。用户可以按照以下语法在 JavaScript 中使用 borderImage 属性。
语法
var element = document.getElementById("<Element id here>"); element.style.border = " <Enter values> "; element.style.borderImage = " <Image_source> <border_slice> <border_width> <border_outset> <repeat||initial||inherit>";
按照上述语法,您可以使用 JavaScript 将图像设置为边框。
参数
- Image_source - 图像源
- border_slice - 图像边框的内部偏移量
- border_width - 图像边框的宽度
- border_outset - 图像边框的外部偏移量
- repeat - 重复图像、拉伸图像或圆角图像
- initial - 设置为属性的默认值
- inherit - 从其父元素继承属性的值
示例
在本例中,我们从用户那里获取 URL 和重复值作为输入。用户可以使用任何图像的 URL 将其显示为边框,并选择重复属性的任何值。单击按钮后,URL 的图像将作为下方容器的边框添加。
<html> <body id = "body"> <h3> Use <i> borderImage </i> property to set the border image repeat </h3> <label for = "url"> Enter Image URL </label> <input type = "text" id = "url" value = "" name = "URL"/> <br> <label> Select Repeat behaviour </label> <select id = "repeat_select"> <option value = "stretch"> stretch </option> <option value = "repeat"> repeat </option> <option value = "round"> round </option> </select> <br> <button id = "btn">Submit</button> <div id = "container"> This is a container </div> <script> var div = document.getElementById("container"); div.style.width = "30%"; div.style.height = "30%"; div.style.border = "20px solid black"; div.style.margin = "10px"; div.style.textAlign = "center"; document.getElementById("btn").addEventListener("click", execute); function execute(){ var selectElement = document.querySelector('#repeat_select'); var selected = selectElement.value; var URL = document.getElementById("url").value; div.style.borderImage = "url("+URL+")" + " 50 50 " + selected; } </script> </body> </html>
在上面的示例中,用户可以看到我们正在添加一个图像作为边框,并为图像设置重复行为。我们使用了 borderImage 属性来设置图像的重复行为。
在本教程中,我们学习了如何使用 JavaScript 设置图像边框是否应该重复、圆角或拉伸。