<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ja">
	<id>https://www.yaogun.com/wiki/index.php?action=history&amp;feed=atom&amp;title=%E3%83%A2%E3%82%B8%E3%83%A5%E3%83%BC%E3%83%AB%3AFlexbox</id>
	<title>モジュール:Flexbox - 版の履歴</title>
	<link rel="self" type="application/atom+xml" href="https://www.yaogun.com/wiki/index.php?action=history&amp;feed=atom&amp;title=%E3%83%A2%E3%82%B8%E3%83%A5%E3%83%BC%E3%83%AB%3AFlexbox"/>
	<link rel="alternate" type="text/html" href="https://www.yaogun.com/wiki/index.php?title=%E3%83%A2%E3%82%B8%E3%83%A5%E3%83%BC%E3%83%AB:Flexbox&amp;action=history"/>
	<updated>2026-05-02T12:37:04Z</updated>
	<subtitle>このウィキのこのページに関する変更履歴</subtitle>
	<generator>MediaWiki 1.35.6</generator>
	<entry>
		<id>https://www.yaogun.com/wiki/index.php?title=%E3%83%A2%E3%82%B8%E3%83%A5%E3%83%BC%E3%83%AB:Flexbox&amp;diff=555800&amp;oldid=prev</id>
		<title>Yaonpghab: ページの作成:「local p = {} local args = mw.getCurrentFrame():getParent().args  function p.get_orient() 	-- Android &lt; 4.44, Firefox 27用の関数 	if 		(args[&quot;direction&quot;] == &quot;column&quot;)…」</title>
		<link rel="alternate" type="text/html" href="https://www.yaogun.com/wiki/index.php?title=%E3%83%A2%E3%82%B8%E3%83%A5%E3%83%BC%E3%83%AB:Flexbox&amp;diff=555800&amp;oldid=prev"/>
		<updated>2022-06-17T01:19:47Z</updated>

		<summary type="html">&lt;p&gt;ページの作成:「local p = {} local args = mw.getCurrentFrame():getParent().args  function p.get_orient() 	-- Android &amp;lt; 4.44, Firefox 27用の関数 	if 		(args[&amp;quot;direction&amp;quot;] == &amp;quot;column&amp;quot;)…」&lt;/p&gt;
&lt;p&gt;&lt;b&gt;新規ページ&lt;/b&gt;&lt;/p&gt;&lt;div&gt;local p = {}&lt;br /&gt;
local args = mw.getCurrentFrame():getParent().args&lt;br /&gt;
&lt;br /&gt;
function p.get_orient()&lt;br /&gt;
	-- Android &amp;lt; 4.44, Firefox 27用の関数&lt;br /&gt;
	if&lt;br /&gt;
		(args[&amp;quot;direction&amp;quot;] == &amp;quot;column&amp;quot;) or&lt;br /&gt;
		(args[&amp;quot;direction&amp;quot;] == &amp;quot;column-reverse&amp;quot;)&lt;br /&gt;
	then&lt;br /&gt;
		return &amp;quot;vertical&amp;quot;&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	return &amp;quot;horizontal&amp;quot;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local orient = p.get_orient()&lt;br /&gt;
local is_webkit_prefix_needed =&lt;br /&gt;
	orient == &amp;quot;vertical&amp;quot; or args[&amp;quot;force-row-legacy&amp;quot;] == &amp;quot;1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
function p.main()&lt;br /&gt;
	local container = p.createContainer(false)&lt;br /&gt;
&lt;br /&gt;
	local content = args[&amp;quot;content&amp;quot;] or args[&amp;quot;1&amp;quot;]&lt;br /&gt;
	container:wikitext(content)&lt;br /&gt;
&lt;br /&gt;
	return tostring(container)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.opening()&lt;br /&gt;
	local openingTag = tostring(p.createContainer(true)):gsub(&amp;quot;/&amp;gt;$&amp;quot;, &amp;quot;&amp;gt;&amp;quot;)&lt;br /&gt;
	return openingTag&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.closing()&lt;br /&gt;
	return &amp;quot;&amp;lt;/div&amp;gt;&amp;quot;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.createContainer(selfClosing)&lt;br /&gt;
	local html_create_args = {}&lt;br /&gt;
	if (selfClosing) then&lt;br /&gt;
		html_create_args = { selfClosing = true }&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	local container = mw.html.create(&amp;#039;div&amp;#039;, html_create_args)&lt;br /&gt;
&lt;br /&gt;
	container:addClass(&amp;quot;tpl-flexbox&amp;quot;)&lt;br /&gt;
	container = p.set_style_display(container)&lt;br /&gt;
	container = p.set_style_direction(container)&lt;br /&gt;
	container = p.set_style_flow(container)&lt;br /&gt;
	container = p.set_style_justify_content(container)&lt;br /&gt;
	container = p.set_style_align_items(container)&lt;br /&gt;
	container = p.set_style_align_content(container)&lt;br /&gt;
	container = p.set_style_gap(container)&lt;br /&gt;
	container:cssText(&amp;quot;-webkit-box-sizing: border-box&amp;quot;) --Android 4.3用&lt;br /&gt;
	container:cssText(&amp;quot;-moz-box-sizing: border-box&amp;quot;) --Firefox =&amp;lt; 28用&lt;br /&gt;
	container:cssText(&amp;quot;box-sizing: border-box&amp;quot;)&lt;br /&gt;
	container = p.set_style_others(container)&lt;br /&gt;
&lt;br /&gt;
	return container&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.set_style_display(elm)&lt;br /&gt;
	if is_webkit_prefix_needed then&lt;br /&gt;
		-- Android &amp;lt; 4.44 は、この場合以外は display: block; のままとする。&lt;br /&gt;
		elm:cssText(&amp;quot;display: -webkit-box&amp;quot;)&lt;br /&gt;
	end&lt;br /&gt;
	elm:cssText(&amp;quot;display: -ms-flexbox; display: flex&amp;quot;)&lt;br /&gt;
	return elm;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.set_style_direction(elm)&lt;br /&gt;
	-- Android &amp;lt; 4.44 と Firefox 27 のみの設定。他は flex-flow が優先される&lt;br /&gt;
	if orient == &amp;quot;vertical&amp;quot; then&lt;br /&gt;
		elm:cssText(&amp;quot;-webkit-box-orient: vertical&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
		if args[&amp;quot;direction&amp;quot;] == &amp;quot;column&amp;quot; then&lt;br /&gt;
			elm:cssText(&amp;quot;flex-direction: column&amp;quot;)&lt;br /&gt;
		else&lt;br /&gt;
			elm:cssText(&amp;quot;-webkit-box-direction: reverse&amp;quot;)&lt;br /&gt;
			elm:cssText(&amp;quot;flex-direction: reverse&amp;quot;)&lt;br /&gt;
		end&lt;br /&gt;
	else&lt;br /&gt;
		if args[&amp;quot;force-row-legacy&amp;quot;] == &amp;quot;1&amp;quot; then&lt;br /&gt;
			elm:cssText(&amp;quot;-webkit-box-orient: horizontal&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
			if args[&amp;quot;direction&amp;quot;] == &amp;quot;row&amp;quot; then&lt;br /&gt;
				elm:cssText(&amp;quot;flex-direction: row&amp;quot;)&lt;br /&gt;
			else&lt;br /&gt;
				elm:cssText(&amp;quot;-webkit-box-direction: reverse&amp;quot;)&lt;br /&gt;
				elm:cssText(&amp;quot;flex-direction: row-reverse&amp;quot;)&lt;br /&gt;
			end&lt;br /&gt;
		else&lt;br /&gt;
			-- 上記以外の場合は、Firefox 27の表示不具合を避けるために column とする。&lt;br /&gt;
			elm:cssText(&amp;quot;flex-direction: column&amp;quot;)&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	return elm&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.set_style_flow(elm)&lt;br /&gt;
	local direction = args[&amp;quot;direction&amp;quot;]&lt;br /&gt;
	local wrap = args[&amp;quot;wrap&amp;quot;]&lt;br /&gt;
&lt;br /&gt;
	if not(&lt;br /&gt;
		direction == &amp;quot;column&amp;quot; or direction == &amp;quot;column-reverse&amp;quot; or&lt;br /&gt;
		direction == &amp;quot;row-reverse&amp;quot;&lt;br /&gt;
	)  then&lt;br /&gt;
		direction = &amp;quot;row&amp;quot;&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	if not(wrap == &amp;quot;wrap-reverse&amp;quot; or wrap == &amp;quot;nowrap&amp;quot;) then&lt;br /&gt;
		wrap = &amp;quot;wrap&amp;quot;&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	elm:cssText(&amp;quot;-ms-flex-flow: &amp;quot; .. direction .. &amp;quot; &amp;quot; .. wrap .. &amp;quot;&amp;quot;) --IE10用&lt;br /&gt;
	elm:cssText(&amp;quot;flex-flow: &amp;quot; .. direction .. &amp;quot; &amp;quot; .. wrap .. &amp;quot;&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
	return elm&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.set_style_justify_content(elm)&lt;br /&gt;
	local justify_content = args[&amp;quot;justify-content&amp;quot;]&lt;br /&gt;
&lt;br /&gt;
	if p.contains({&lt;br /&gt;
		&amp;quot;flex-start&amp;quot;, &amp;quot;flex-end&amp;quot;, &amp;quot;start&amp;quot;, &amp;quot;end&amp;quot;, &amp;quot;center&amp;quot;,&lt;br /&gt;
		&amp;quot;space-between&amp;quot;, &amp;quot;space-around&amp;quot;, &amp;quot;space-evenly&amp;quot;&lt;br /&gt;
	}, justify_content) then&lt;br /&gt;
&lt;br /&gt;
		local webkit_ms_value --IE10, Android4.3用&lt;br /&gt;
		if string.find(justify_content, &amp;quot;space&amp;quot;) then&lt;br /&gt;
			webkit_ms_value = &amp;quot;justify&amp;quot;&lt;br /&gt;
		else&lt;br /&gt;
			webkit_ms_value = justify_content:gsub(&amp;quot;flex-&amp;quot;, &amp;quot;&amp;quot;)&lt;br /&gt;
		end&lt;br /&gt;
&lt;br /&gt;
		if is_webkit_prefix_needed then --Android 4.3用&lt;br /&gt;
			elm:cssText(&amp;quot;-webkit-box-align: &amp;quot; .. webkit_ms_value .. &amp;quot;&amp;quot;)&lt;br /&gt;
		end&lt;br /&gt;
		elm:cssText(&amp;quot;-ms-flex-align: &amp;quot;.. webkit_ms_value .. &amp;quot;&amp;quot;) --IE10用&lt;br /&gt;
		if p.contains({&amp;quot;start&amp;quot;, &amp;quot;end&amp;quot;}, justify_content) then&lt;br /&gt;
			-- IE11, Edge &amp;lt; 92, Firefox &amp;lt; 44, Chrome &amp;lt; 92, Opera, Android &amp;lt; 4.4.4用&lt;br /&gt;
			elm:cssText(&amp;quot;justify-content: flex-&amp;quot; .. justify_content .. &amp;quot;&amp;quot;)&lt;br /&gt;
		end&lt;br /&gt;
		if justify_content == &amp;quot;space-evenly&amp;quot; then&lt;br /&gt;
			-- IE11, Edge &amp;lt; 18, Firefox &amp;lt; 51, Chrome &amp;lt; 59, Safari &amp;lt; 10.1, Opera &amp;lt; 46,&lt;br /&gt;
			-- Android &amp;lt; 4.4.4用&lt;br /&gt;
			elm:cssText(&amp;quot;justify-content: space-around&amp;quot;)&lt;br /&gt;
		end&lt;br /&gt;
		elm:cssText(&amp;quot;justify-content: &amp;quot; .. justify_content .. &amp;quot;&amp;quot;)&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	return elm&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.set_style_align_items(elm)&lt;br /&gt;
	local align_items = args[&amp;quot;align-items&amp;quot;]&lt;br /&gt;
&lt;br /&gt;
	if p.contains({&lt;br /&gt;
		&amp;quot;stretch&amp;quot;, &amp;quot;flex-start&amp;quot;, &amp;quot;flex-end&amp;quot;, &amp;quot;start&amp;quot;, &amp;quot;end&amp;quot;, &amp;quot;center&amp;quot;, &amp;quot;baseline&amp;quot;&lt;br /&gt;
	}, align_items) then&lt;br /&gt;
		local webkit_ms_value = align_items:gsub(&amp;quot;flex-&amp;quot;, &amp;quot;&amp;quot;)&lt;br /&gt;
		if is_webkit_prefix_needed then --Android 4.3用&lt;br /&gt;
			elm:cssText(&amp;quot;-webkit-box-align: &amp;quot; .. webkit_ms_value .. &amp;quot;&amp;quot;)&lt;br /&gt;
		end&lt;br /&gt;
&lt;br /&gt;
		elm:cssText(&amp;quot;-ms-flex-align: &amp;quot; .. webkit_ms_value .. &amp;quot;&amp;quot;) --IE10用&lt;br /&gt;
		if p.contains({&amp;quot;start&amp;quot;, &amp;quot;end&amp;quot;}, align_items) then&lt;br /&gt;
			-- IE11, Edge &amp;lt; 92, Firefox &amp;lt; 44, Chrome &amp;lt; 92, Safari, Opera &amp;lt; 43,&lt;br /&gt;
			-- Android &amp;lt; 4.4.4用&lt;br /&gt;
			elm:cssText(&amp;quot;align-items: flex-&amp;quot; .. align_items .. &amp;quot;&amp;quot;)&lt;br /&gt;
		end&lt;br /&gt;
		elm:cssText(&amp;quot;align-items: &amp;quot; .. align_items .. &amp;quot;&amp;quot;)&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	return elm&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.set_style_align_content(elm)&lt;br /&gt;
	local align_content = args[&amp;quot;align-content&amp;quot;]&lt;br /&gt;
&lt;br /&gt;
	if p.contains({&lt;br /&gt;
		&amp;quot;stretch&amp;quot;, &amp;quot;flex-start&amp;quot;, &amp;quot;flex-end&amp;quot;, &amp;quot;start&amp;quot;, &amp;quot;end&amp;quot;, &amp;quot;center&amp;quot;,&lt;br /&gt;
		&amp;quot;space-between&amp;quot;, &amp;quot;space-around&amp;quot;, &amp;quot;space-evenly&amp;quot;&lt;br /&gt;
	}, align_content) then&lt;br /&gt;
		local ms_value --IE10用&lt;br /&gt;
		if align_content == &amp;quot;space-between&amp;quot; then&lt;br /&gt;
			ms_value = &amp;quot;justify&amp;quot;&lt;br /&gt;
		elseif align_content == &amp;quot;space-around&amp;quot; then&lt;br /&gt;
			ms_value = &amp;quot;distribute&amp;quot;&lt;br /&gt;
		else&lt;br /&gt;
			ms_value= align_content:gsub(&amp;quot;flex-&amp;quot;, &amp;quot;&amp;quot;)&lt;br /&gt;
		end&lt;br /&gt;
		elm:cssText(&amp;quot;-ms-flex-line-pack: &amp;quot; .. ms_value .. &amp;quot;&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
		if p.contains({&amp;quot;start&amp;quot;, &amp;quot;end&amp;quot;}, align_content) then&lt;br /&gt;
			-- IE11, Edge &amp;lt; 92, Firefox &amp;lt; 44, Chrome &amp;lt; 92, Safari, Opera,&lt;br /&gt;
			-- Android &amp;lt; 4.4.4用&lt;br /&gt;
			elm:cssText(&amp;quot;align-content: flex-&amp;quot; .. align_content .. &amp;quot;&amp;quot;)&lt;br /&gt;
		end&lt;br /&gt;
		if align_content == &amp;quot;space-evenly&amp;quot; then&lt;br /&gt;
			-- IE11, Edge &amp;lt; 18, Firefox &amp;lt; 51, Chrome &amp;lt; 59, Safari &amp;lt; 10.1, Opera &amp;lt; 46,&lt;br /&gt;
			-- Android &amp;lt; 4.4.4用&lt;br /&gt;
			elm:cssText(&amp;quot;align-content: space-around&amp;quot;)&lt;br /&gt;
		end&lt;br /&gt;
		elm:cssText(&amp;quot;align-content: &amp;quot; .. align_content .. &amp;quot;&amp;quot;)&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	return elm&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.set_style_gap(elm)&lt;br /&gt;
	local gap = args[&amp;quot;gap&amp;quot;]&lt;br /&gt;
	elm:cssText(&amp;quot;gap: &amp;quot; .. (args[&amp;quot;gap&amp;quot;] or &amp;quot;0 1em&amp;quot;) .. &amp;quot;&amp;quot;)&lt;br /&gt;
	return elm&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.set_style_others(elm)&lt;br /&gt;
	local style = args[&amp;quot;style&amp;quot;]&lt;br /&gt;
	if style then&lt;br /&gt;
		style = style:gsub(&amp;quot;\&amp;quot;&amp;quot;, &amp;quot;&amp;quot;)&lt;br /&gt;
		elm:cssText(style)&lt;br /&gt;
	end&lt;br /&gt;
	return elm&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.contains(list, str)&lt;br /&gt;
	for i, elm in pairs(list) do&lt;br /&gt;
		if elm == str then&lt;br /&gt;
			return true&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	return false&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
return p&lt;/div&gt;</summary>
		<author><name>Yaonpghab</name></author>
	</entry>
</feed>