From 946e38f2709c2273b5bfc63525a1a7709a7cd34e Mon Sep 17 00:00:00 2001 From: mayintao3 Date: Mon, 1 Jul 2024 21:21:05 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20background-postion=E6=94=AF=E6=8C=81?= =?UTF-8?q?=E7=99=BE=E5=88=86=E6=AF=94?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/style_propetries/unit.rs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/style_propetries/unit.rs b/src/style_propetries/unit.rs index 9733185..92159d2 100644 --- a/src/style_propetries/unit.rs +++ b/src/style_propetries/unit.rs @@ -145,7 +145,7 @@ pub fn generate_expr_by_length_value(length_value: &LengthValue, platform: Platf pub fn generate_expr_with_css_input(input: String, platform: Platform) -> Expr { // 定义匹配 '16px' 的正则表达式 - let re = Regex::new(r"(-?(?P\d+(\.\d*)?|\.\d+))(?P(px|vw|vh|pX|PX|Px)?)").unwrap(); + let re = Regex::new(r"(-?(?P\d+(\.\d*)?|\.\d+))(?P(%|px|vw|vh|pX|PX|Px)?)").unwrap(); let bytes = input.as_bytes(); // 使用正则表达式进行匹配 if let Ok(caps) = re.captures(bytes) { @@ -171,6 +171,9 @@ pub fn generate_expr_with_css_input(input: String, platform: Platform) -> Expr { "pX" | "PX" | "Px" => { return generate_expr_lit_str!(format!("{}px", number)) }, + "%" => { + return generate_expr_lit_str!(format!("{}%", number)) + } _ => { // 如果没有单位,则认为是纯数字,返回 Expr::Num return generate_expr_lit_num!(number);