模块:Flexbox

来自「荏苒之境」
Sicusa留言 | 贡献2025年8月8日 (五) 18:17的版本 (// via Wikitext Extension for VSCode)

此模块的文档可以在模块:Flexbox/doc创建

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 i = 1, #args do
		t[#t+1] = item_template
		t[#t+1] = args[i]
		t[#t+1] = "</div>"
	end
	t[#t+1] = "</div>"
	return table.concat(t)
end

return flexbox