模块: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 getArgs = require('Module:Arguments').getArgs
local utils_str = require("Module:Utils/String")
local p = {}


function p.main(frame)
local flexbox = {}
local args = getArgs(frame)
 
local style = args["style"] or ""
flexbox.show = function(frame)
local minwidth = args["min-width"] or ""
local args = frame.args
local maxwidth = args["max-width"] or ""
local style = args.style or ""
local padding = args["padding"] or ""
local min_width = args.min_width or ""
local ret = '<div style="display:flex; flex-wrap:wrap; '..style..'">'
local max_width = args.max_width or ""
local n = 1
local padding = args.padding or ""
while args[n] do
 
ret = ret .. '<div style="flex:1 1 0; min-width:'..minwidth..'; max-width:'..maxwidth..'; padding:'..padding..';">'..args[n]..'</div>'
local item_template = table.concat {
n = n + 1
'<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
ret = ret .. '</div>'
t[#t+1] = "</div>"
return ret
return table.concat(t)
end
end


return p
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