본문으로 이동

모듈:Optional style

위키문헌, 우리 모두의 도서관.
모듈 설명문서[보기] [편집] [역사] [새로 고침]

{{선택적 모양}}에 사용.

--[=[
	Simple module to construct a style attribute
	with an undefined number (including zero) of CSS properties
]=]

local p = {} --p stands for package
local getArgs = require('Module:Arguments').getArgs

--[=[
	Construct the string from the given table of property:values
]=]
function p.make_style_string(properties)
	local out  = ''
	
	for k, v in pairs(properties) do
		if k ~= 'style' and v~= '' then
			out = out .. k .. ':' .. v .. ';'
		end
	end
	
	if properties.style ~= nil and properties.style ~= '' then
		out = out .. properties.style	
	end
	
	if out == '' then
		return ''
	end
	
	return 'style="' .. out .. '"'
end

--[=[
	The main entry function from templates
	
	Arguments are taken from both frame and parent argument lists
]=]
function p.optional_style(frame)
	local args = getArgs(frame)
	return p.make_style_string(args)
end

return p