模块:Flexbox:修订间差异
来自「荏苒之境」
创建页面,内容为“local getArgs = require('Module:Arguments').getArgs local p = {} function p.main(frame) local args = getArgs(frame) local style = args["style"] or "" local minwidth = args["min-width"] or "" local maxwidth = args["max-width"] or "" local padding = args["padding"] or "" local ret = '<div style="display:flex; flex-wrap:wrap; '..style..'">' local n = 1 while args[n] do ret = ret .. '<div style="flex:1 1 0; min-width:'..minwidth..'; max-width:'..maxwidth…” |
无编辑摘要 |
||
(未显示同一用户的3个中间版本) | |||
第1行: | 第1行: | ||
local | local utils_str = require("Module:Utils/String") | ||
function | local flexbox = {} | ||
local args = | |||
local style = args | flexbox.show = function(frame) | ||
local | local args = frame.args | ||
local | local style = args.style or "" | ||
local padding = args | local min_width = args.min_width or "" | ||
local | local max_width = args.max_width or "" | ||
local padding = args.padding or "" | |||
local item_template = table.concat { | |||
'<div style="flex:1 1 0; ', | |||
min_width ~= "" and "min-width: "..min_width.."; " or "", | |||
max_width ~= "" and "max-width: "..max_width.."; " or "", | |||
padding ~= "" and 'padding :'..padding..';">' or ">" | |||
} | |||
local t = {'<div style="display:flex; flex-wrap:wrap; ', style, '">'} | |||
for _, arg in ipairs(frame:getParent().args) do | |||
t[#t+1] = item_template | |||
t[#t+1] = utils_str.trim(arg) | |||
t[#t+1] = "</div>" | |||
end | end | ||
t[#t+1] = "</div>" | |||
return | return table.concat(t) | ||
end | end | ||
return | return flexbox |
2025年8月8日 (五) 18:38的最新版本
此模块的文档可以在模块:Flexbox/doc创建
local utils_str = require("Module:Utils/String")
local flexbox = {}
flexbox.show = function(frame)
local args = frame.args
local style = args.style or ""
local min_width = args.min_width or ""
local max_width = args.max_width or ""
local padding = args.padding or ""
local item_template = table.concat {
'<div style="flex:1 1 0; ',
min_width ~= "" and "min-width: "..min_width.."; " or "",
max_width ~= "" and "max-width: "..max_width.."; " or "",
padding ~= "" and 'padding :'..padding..';">' or ">"
}
local t = {'<div style="display:flex; flex-wrap:wrap; ', style, '">'}
for _, arg in ipairs(frame:getParent().args) do
t[#t+1] = item_template
t[#t+1] = utils_str.trim(arg)
t[#t+1] = "</div>"
end
t[#t+1] = "</div>"
return table.concat(t)
end
return flexbox